Write a Tokio 0.2 decoder for a TCP stream and push its events to Apache Kafka
What we'll be making: We'll be listening to a port. This port is streaming out some XML events. Only caveat is is that it is first padded (sometimes) with a 32bit number to tell you how much bytes are...
View ArticleBuilding a request inspector
I’ve been quite involved with distributed tracing and have spent a fair amount of time looking at the W3C recommendation for dealing with trace context at work lately. As a result of this, I have found...
View ArticleMulti-threaded HTTP/WebSocket server in Rust
Building up on my previous posts about MIO-based server and parser combinators, this post is about making a very simple HTTP server capable of running on multiple threads and implementing WebSocket...
View ArticleBuilding a Real-time Chat App in Rust and React
This article covers building a chat app in Rust using asynchronous code.
View ArticleThe most general reverse proxy
Deploying web applications is hard to do, and there are a bewildering variety of ways to do it. Today I’d like to confuse the matter further by proposing yet another approach. As a preview, here are...
View ArticleDatabase Migrations with a Rust Web Service
In this post we’ll take a look at how to do database migrations using the refinery library in the context of a web application.
View ArticleFour Years of Rust At OneSignal
OneSignal has been using Rust extensively in production since 2016, and a lot has changed in the last four years – both in the wider Rust ecosystem and at OneSignal.At OneSignal, we use Rust to write...
View ArticleBuild a Smart Bookmarking Tool with Rust and Rocket
One of my favorite tools that exists internally is our smart bookmarking tool commonly referred to as “bunnylol.” Originally named bunny1 and open sourced, it’s what we use to navigate across all...
View ArticleNLnet funding, and Lemmy v0.7.0 with new image hosting!
Lemmy is receiving funding from the NLnet foundation! The funding is for a total amount of 45.000 €, which will allow /u/dessalines and me (/u/nutomic ) to work on Lemmy full-time for at least half a...
View ArticleBastion floating on Tide - Part 2
This post is Part two of a series on how to build a highly fault tolerant system using bastion-rs, and expose an async web api with Tide. Part one is about setting up a simple Tide server, and covers...
View ArticleUsing RabbitMQ in Rust
In this post we will take a look at how to integrate a Rust web application using warp with RabbitMQ. For this purpose, we will use the lapin library together with deadpool for pooling connections. The...
View ArticleRust is Surprisingly Good as a Server Language
At some point, I got tired of my old static site generator setup for my blogs and other pages. It was annoying to ssh every time I wanted to make a modification, it was annoying to sftp or sshfs all my...
View ArticleWriting an asynchronous MQTT Broker in Rust - Part 2
In the last section, we went over the MQTT protocol and our proposed architecture. By the end of this tutorial, we’ll have a tiny little broker that will accept clients and play ping-pong, and we’ll...
View ArticleSite Update: Rewrite in Rust
Hello there! You are reading this post thanks to a lot of effort, research and consultation that has resulted in a complete from-scratch rewrite of this website in Rust. This website stands on the...
View ArticleUnder the hood of Linkerd's state-of-the-art Rust proxy, Linkerd2-proxy
Thanks in part to Linkerd's performance numbers and stellar security audit report, there's been a recent surge of interest in Linkerd2-proxy, the underlying proxy used by Linkerd. I've been working on...
View ArticleTutorial: Deno Apps with WebAssembly, Rust, and WASI
Deno is created by the original developer of Node.js, Ryan Dahl, to address what he called 10 things I regret about Node.js. It did away with the NPM and the infamous node_modules. Deno is a single...
View ArticleValerie: Rethinking Web Apps in Rust
I have personally tried and seen various front-end frameworks for Web Apps in Rust. To be honest, they are pretty good and do their job well. But they do have some drawbacks, like a steep curve for...
View ArticlePassing messages between AWS IoT and SQS queue using Lambdas written in Rust
AWS IoT Core provides a convenient way to connect your IoT devices like ESP32 to the cloud. Typically MQTT protocol is used for that.Let’s suppose everything is setup on AWS IoT side and you can see...
View ArticleApache thrift over unix sockets in Rust
Apache Thrift is an interface definition language and binary communication protocol use for defining and creating services for all the numerous supported languages. It forms an RPC framework avoiding...
View Article