Centrifugo – real-time messaging server in Go, supports WebSockets and SockJS(github.com)
github.com
Centrifugo – real-time messaging server in Go, supports WebSockets and SockJS
https://github.com/centrifugal/centrifugo
1 comments
Here is a link to Centrifugo – real-time messaging server in Go. This is a central part of Centrifugal stack (http://fzambia.gitbooks.io/centrifugal/content/). It supports Websocket and SockJS client connections. Originally server was written in Python (https://github.com/centrifugal/centrifuge), but recently the entire code base moved to Go language. This is a server that works as a service – can be used with web sites written in any language. Feedback is highly appreciated.
i've got mutliple questions :
- are there any logging capabilities ? For exemple for feeding a cassandra cluster for later event analysis and processing.
- are there any monitoring feature ? Inspecting server load or average latency ?
- what about sharding in case of load ?
- are there any logging capabilities ? For exemple for feeding a cassandra cluster for later event analysis and processing.
- are there any monitoring feature ? Inspecting server load or average latency ?
- what about sharding in case of load ?
Hello!
- at moment logging is quite unstructured - just text entries, written into stdout or file. In future I am planning to move to something like this (https://github.com/Sirupsen/logrus) and improve log structure.
- metrics exist in Centrifuge but the next step for Centrifugo (the only thing left to be fully compared with Python version). At moment external monitoring tools can be used for CPU and memory monitoring. I am planning to utilize this library for metrics - https://github.com/rcrowley/go-metrics
- you can run several instances on different machines connected via Redis and load balance clients between them. But no sharding support out of the box.
What do you think about this? I highly appreciate any feedback
- at moment logging is quite unstructured - just text entries, written into stdout or file. In future I am planning to move to something like this (https://github.com/Sirupsen/logrus) and improve log structure.
- metrics exist in Centrifuge but the next step for Centrifugo (the only thing left to be fully compared with Python version). At moment external monitoring tools can be used for CPU and memory monitoring. I am planning to utilize this library for metrics - https://github.com/rcrowley/go-metrics
- you can run several instances on different machines connected via Redis and load balance clients between them. But no sharding support out of the box.
What do you think about this? I highly appreciate any feedback