Recently I’ve been trying out gRPC on the first impression, it was really fun to work with, once I the hang of writing a
.proto file and using the code generator protoc, all I had to do was implement the interface (the one with the
Server suffix) which I find very easy to do with the IDE of my choice (GoLand), just of the case of pressing Alt+Enter and then implementing interface it’s generate the spoiler plates for you so you don’t have to write them yourself; once I got past that, and I got the microservices all up and running, all I had to do was set up the client and execute the method, I didn’t even have to think about serialization as
protoc will take care of that for you which is very nice, all I had to do was write the
Elizabeth Castle, St Helier
I decided to revamp my existing infrastructure to something I can easily manage and set up backups and checkpoints. I was running the now discontinued Antergos which is based on top of Arch Linux which is a brilliant operating system, but it’s not very suitable for the enterprise because they often prefer matured application, with Arch Linux you always get given the latest application it’s too new for the enterprise especially for databases, so I thought it would be better to have a new infrastructure setup.
Because I didn’t have much practical experience with microservices and I never had the opportunity to do
it at the company I currently work for, I thought I do a little experiment that involves the use of microservices and a message bus.
Link to source code
The waiter and the chef are microservices, the customer is just the CLI that talks to the waiter to make an order and then the waiter send the order to chef using the message bus (NSQ), it’s pretty simple and basic really, all it’s does is that it’s send “Pepperoni Pizza” over the bus. But I only needed to prove to myself that I can build microservices, I believe I have succeeded in that, YAY. 😄
What I like about NSQ, compared TCP/IP I don’t have to manually set up a listener and manage the buffer, I can do it but it’s a little bit tedious; so instead I easily set up a Publisher the one that sends the information and the Consumer the one that receives the information.
It’s been a little while since I made my last blog post, well I have been a little busy lately
with work, working out at the gym, learning to play the guitar, learning a bit of Japanese
(trying to master Hiragana ひらがな and Katakana カタカナ is a little bit tricky, hopefully, I get there),
playing a couple of video games, mainly Crash Team Racing Nitro-Fueled and Super Mario Maker 2.
I also took the time to learn Rust, I enjoyed it, it’s just
the IDE I’m working with is struggling to work with external libraries, so I’m going to stay off
Rust until that is fixed, it’s just difficult for me to stay productive without auto-complete, I
just can’t keep looking at the document there and back, it’s will burn me out and that no
good and I need to work fast. 😄
I'll take time to learn other programming languages, I just don’t want to be that person who uses
I would have used C++, it’s a big language with no garbage collection, I will learn it when I get
the time and overcome the fear, but hopefully, it will be fun. I will also take the time to learn Ruby.