Gangmax Blog

WebSocket

WebSocket is a computer communications protocol, providing full-duplex communication channels over a single TCP connection. It is designed to be implemented in web browsers and web servers, but it can be used by any client or server application.

How to fix missing GPG keys

When I was running “sudo apt-get update” and a sudden power off happened. After restarting Ubuntu, I find the following error after running “sudo apt-get update” again:

ZooKeeper

ZooKeeper is a high-performance coordination service for distributed applications. It exposes common services - such as naming, configuration management, synchronization, and group services - in a simple interface so you don’t have to write them from scratch.

Lombok

Lombok is a Java library which provides a set of annotations with which you can simplify your Java code(get rid of “getter/setter/equals/hashcode” and etc) by using the annotations, after that Lombok will generate the boilerplate code for you during the compiling/building time(“compile” for “Eclipse/IntelliJ IDEA with plugins”, “build” for “Maven/Gradle”) with the annotation information. Then you can use the Java classes as vanilla Java classes.

Introspect Gradle Script

It’s difficult to figure out how a Gradle script works as a pure Groovy script. Such as, where are the “buildscript/task/project/allprojects/subprojects/dependencies” functions defined, if they are function calls really?

Expose static resources in Grails

Recently, I’m working on a project in which I use Grails to implement RESTful API back-end with the “rest-api” profile. It’s simple and works well, until the frond-end developer asks me to intergrate the front-end implementation(React with “javscript/css/font/image”) files into the back-end Grails project.