Skip to content

Commit d32b433

Browse files
committed
add product update 2024
1 parent 3db79b0 commit d32b433

File tree

9 files changed

+115
-0
lines changed

9 files changed

+115
-0
lines changed
Loading
Loading
166 KB
Loading
Loading
Loading
Loading
Loading
Loading
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
---
2+
title: "Product Update: Colyseus Cloud 2024"
3+
description: "Improved alerting & monitoring system, rolling updates, and more!"
4+
pubDate: "Nov 14 2024"
5+
author: "Endel Dreyer"
6+
heroImage: "../../../assets/blog/004-product-update-2024/hero.png"
7+
---
8+
import { Image } from 'astro:assets';
9+
import alertingMonitoring from "../../../assets/blog/004-product-update-2024/alerting-monitoring.png";
10+
import slackAlertDeploy from "../../../assets/blog/004-product-update-2024/slack-alert-deploy.png";
11+
import slackAlertCPU from "../../../assets/blog/004-product-update-2024/slack-alert-cpu.png";
12+
import slackAlertShutdown from "../../../assets/blog/004-product-update-2024/slack-alert-shutdown.png";
13+
import deployGraphs from "../../../assets/blog/004-product-update-2024/deploy-graphs.png";
14+
import processShutDown from "../../../assets/blog/004-product-update-2024/process-shutdown.gif";
15+
import mascots from "../../../assets/blog/004-product-update-2024/mascots.png";
16+
17+
We've been hard at work this year to improve both the Colyseus Framework and Colyseus Cloud platform. Here are some of the highlights of the latest updates:
18+
19+
## Alerting & Monitoring System
20+
21+
Now you can set up alerts for your applications and receive notifications via **Email**, **Discord** or **Slack** when something goes off. The monitoring system has been improved to provide more insights into your application's performance.
22+
23+
<div class="mt-2 mb-6">
24+
<Image class="rounded block" src={alertingMonitoring} alt="Monitoring and Alerting" />
25+
</div>
26+
27+
The alert types currently available are:
28+
29+
- Deployment success / failure
30+
- Ungraceful restart (e.g. when the server crashes)
31+
- CPU or Memory Threshold Exceeded
32+
- Failure to Health Check (e.g. when the server is not responding)
33+
34+
<div class="mx-auto mt-6 mb-12 w-sm w-full lg:w-5/6 text-center text-gray-600">
35+
<div class="grid grid-cols-1 md:grid-cols-3 gap-6 w-full justify-between">
36+
<div class="my-auto">
37+
<a href={slackAlertDeploy.src} target="_blank"><Image class="rounded" src={slackAlertDeploy} alt="Alert on new deployments" /></a>
38+
</div>
39+
<div class="my-auto">
40+
<a href={slackAlertShutdown.src} target="_blank"><Image class="rounded" src={slackAlertShutdown} alt="Alert on Ungraceful Shutdown" /></a>
41+
</div>
42+
<div class="my-auto">
43+
<a href={slackAlertCPU.src} target="_blank"><Image class="rounded" src={slackAlertCPU} alt="Alert on CPU Threshold" /></a>
44+
</div>
45+
</div>
46+
<p class="text-sm p-3 italic">Examples of alerts delivered via **Slack**.</p>
47+
</div>
48+
49+
## Rolling updates & Graceful Shutdown
50+
51+
With the recent improvement on [Graceful Shutdown](https://docs.colyseus.io/server/graceful-shutdown/) process with the introduction of [`room.onBeforeShutdown()`](https://docs.colyseus.io/server/room/#onbeforeshutdown) - you can now deploy new versions of your application without disconnecting your players.
52+
53+
```typescript
54+
onBeforeShutdown() {
55+
//
56+
// Notify users that process is shutting down, they may need to save their
57+
// progress and join a new room
58+
//
59+
this.broadcast("going-down", "Server will shut down!");
60+
61+
//
62+
// Disconnect all clients after 5 minutes
63+
//
64+
this.clock.setTimeout(() => this.disconnect(), 5 * 60 * 1000);
65+
}
66+
```
67+
68+
{/* TODO: REMOVE THIS */}<div>&nbsp;</div>
69+
70+
This change brings several advantages to your application:
71+
72+
- Ensure that all clients can safely finish their sessions.
73+
- No downtime during deployments.
74+
75+
<div class="mx-auto mt-6 mb-12 w-sm w-full lg:w-5/6 text-center text-gray-600">
76+
<Image class="rounded mx-auto" src={processShutDown} alt="Alert on CPU Threshold" />
77+
<p class="text-sm p-3 italic">Shutting-down processes are displayed blinking in red on the Stats and Logs page.</p>
78+
</div>
79+
80+
> This feature is not enabled by default as we're still gathering feedback for potential improvement. If you're interested in trying it out, please reach out to enable in your Colyseus Cloud application.
81+
82+
## Stats Page Improvements
83+
84+
- New deployments are now displayed as a green annotation on the graphs.
85+
- The frequency of updates on the Stats page has been increased to **every minute**.
86+
87+
<div class="mt-2 mb-6">
88+
<Image class="rounded" src={deployGraphs} alt="Deployment on graphs" />
89+
</div>
90+
91+
## Meet Valerya and Gladius!
92+
93+
We've got brand-new mascots for Colyseus! Meet Valerya and Gladius, the guardians of your multiplayer games.
94+
95+
<div class="mt-2 mb-6">
96+
<Image class="rounded" src={mascots} alt="Valerya & Gladius" />
97+
</div>
98+
99+
Aren't they cute? 😍
100+
101+
---
102+
103+
### Version 0.16 is coming soon!
104+
105+
Version `0.16` is [around the corner](https://github.com/colyseus/colyseus/pull/745), and is going to bring several improvements to the framework - the highlights are:
106+
107+
- Introduction of the **`StateView`** - allowing to filter out portions of the state per client.
108+
- Improvements to **`@colyseus/schema`** - making it more composable and easier to use.
109+
- Experimental WebTransport support.
110+
111+
---
112+
113+
The Colyseus Framework aims to reach version `1.0` in 2026. The priorities of the project are available in the [public roadmap](https://github.com/colyseus/colyseus/wiki/Public-Roadmap).
114+
115+
If you have any feedback or suggestion, please feel free to reach out to me on [[email protected]](mailto:[email protected]), [Discord](http://chat.colyseus.io/) or [X/Twitter](https://twitter.com/endel).

0 commit comments

Comments
 (0)