Go (Golang) vs Python Performance Benchmark (Kubernetes - OpenTelemetry - Prometheus - S3/Postgres)

  Рет қаралды 11,647

Anton Putra

Anton Putra

Күн бұрын

Пікірлер: 81
@AntonPutra
@AntonPutra 11 ай бұрын
🔴 - To support my channel, I’d like to offer Mentorship/On-the-Job Support/Consulting - me@antonputra.com
@MDFireX5
@MDFireX5 6 күн бұрын
Антон, тест говно, какой фласк, где и как ты подумал, что он топ 1 ? фаст апи
@GabrielPozo
@GabrielPozo 11 ай бұрын
Your benchmark videos are always the best and most complete!
@AntonPutra
@AntonPutra 11 ай бұрын
Thanks, Gabriel! Any suggestions for the next benchmark?
@GabrielPozo
@GabrielPozo 11 ай бұрын
@@AntonPutra Now, I don't have anything in mind, but I will think of something.
@PikaChu-fz4ij
@PikaChu-fz4ij 10 ай бұрын
@@AntonPutra Really want python-sanic vs golang and node.js
@099watcher
@099watcher Ай бұрын
Really like your content! For suggestion in python's ecosystem django is the most dominant backend framework, I know It will get beaten by node, java and golang in performance but still we would love to see how slow it is compared to other languages. Tip: In django most of the people use DRF (Django Rest Framwork) for building REST APIs so combining django with DRF makes sense when doing benchmark.
@AntonPutra
@AntonPutra Ай бұрын
thanks for the tip. yeah, django is very popular.
@nitishmalang4844
@nitishmalang4844 10 ай бұрын
awesome anton liked this quality content found rarely on internet thanks for this 😇
@RABWA333
@RABWA333 11 ай бұрын
that is really great , hope to see the same for Nodejs (express) with postgress or DBmongo db
@AntonPutra
@AntonPutra 11 ай бұрын
Thanks, Ghubein! Will do at some point.
@marknefedov
@marknefedov 10 ай бұрын
Hi, I love your videos! Would you consider making a video about GitOps strategies and best practices in a closed, bare metal environment (without using a cloud solution like GitHub)? Specifically, how do you host your infrastructure Git repo? Do you create a separate non-GitOps cluster to deploy HA-Git and CI/CD? Do you deploy Git to a plain VM? Or do you go through the "chicken and egg problem" and deploy Git and CI/CD into the same cluster that you manage with GitOps tools like Flux or Argo?
@denisgr1
@denisgr1 10 ай бұрын
спасибо, ваши видео помогают мне правильно стартовать и развиваться в новых технологиях, выкладывайте еще!
@malikt7z
@malikt7z Ай бұрын
Great Video 👍🏻
@AntonPutra
@AntonPutra Ай бұрын
thank you!
@duke007x3
@duke007x3 10 ай бұрын
Hello Anton, thanks for the video, great as always. If you have time and possibility can you please make videos a little bit longer with deeper explanations for such noobs like me?)) Do you plan any videos on such topics as jenkins, ansible? Anyway thanks, you are doing great job.
@funkindy
@funkindy 10 ай бұрын
In real world scenario add network roundtrip latency and the overall latency difference would dissappear, i guess
@AntonPutra
@AntonPutra 10 ай бұрын
But it would applied to both languages, interesting question if golang handle network requests better
@funkindy
@funkindy 10 ай бұрын
@@AntonPutra sure, add constant like 50-150ms for both languages and the difference would almost disappear. But CPU/MEM difference would not, for sure)
@floriankapfenberger
@floriankapfenberger 11 ай бұрын
Great video Anton! I would be interested in an Elixir/Phoenix Benchmark if you be able to do that :)
@AntonPutra
@AntonPutra 11 ай бұрын
Thanks Florian, I've just added it to my list.
@floriankapfenberger
@floriankapfenberger 11 ай бұрын
@@AntonPutra Awesome!
@lipin007
@lipin007 28 күн бұрын
Kindly consider benchmarking ruby on rails vs go gin!
@AntonPutra
@AntonPutra 28 күн бұрын
ah ruby on rails, it's been a while❤️ yes will do
@lipin007
@lipin007 28 күн бұрын
@@AntonPutra Thank you!
@horseinthesky
@horseinthesky 11 ай бұрын
Thank you for an amazing content. Could you one day make a tutorial about how to set up multiple node k8s cluster locally: ESXi or lxd if possible. It would help to learn k8s without AWS stuff so much.
@AntonPutra
@AntonPutra 11 ай бұрын
Thanks, Kirill! Well why not minikube? Just run "minikube start --nodes 2" or set to any number of nodes
@horseinthesky
@horseinthesky 11 ай бұрын
@@AntonPutra That is a good starting point to begin the journey but these nodes would be docker containers on the same host/VM. I consider building a k8s cluster manually on different nodes (physical hosts/VMs) to play with it.
@AntonPutra
@AntonPutra 11 ай бұрын
@@horseinthesky got it, will do at some point (by the way you can use virtualbox as a driver and those nodes will be vms)
@horseinthesky
@horseinthesky 11 ай бұрын
@@AntonPutra Thank you! You used ESXi in this video and since I have a dedicated ESXi host where I build virtual network topologies and practice my programming skills I thought it would be great to have a small k8s lab there too to (you know) some kind of versatile IT experience =)
@AntonPutra
@AntonPutra 11 ай бұрын
@@horseinthesky take a look, I'll create a tutorial soon ## Control Plane ### Preparing the hosts sudo apt update && sudo apt -y upgrade sudo sed -i 's/ubuntu/control-plane-00/' /etc/hostname sudo sed -i 's/ubuntu/control-plane-00/' /etc/hosts sudo reboot sudo apt update && sudo apt -y upgrade sudo sed -i 's/ubuntu/node-00/' /etc/hostname sudo sed -i 's/ubuntu/node-00/' /etc/hosts sudo reboot sudo apt update && sudo apt -y upgrade sudo sed -i 's/ubuntu/node-01/' /etc/hostname sudo sed -i 's/ubuntu/node-01/' /etc/hosts sudo reboot sudo apt update && sudo apt -y upgrade sudo sed -i 's/ubuntu/node-02/' /etc/hostname sudo sed -i 's/ubuntu/node-02/' /etc/hosts sudo reboot sudo apt update && sudo apt -y upgrade sudo sed -i 's/ubuntu/node-03/' /etc/hostname sudo sed -i 's/ubuntu/node-03/' /etc/hosts sudo reboot sudo apt update && sudo apt -y upgrade sudo sed -i 's/ubuntu/node-04/' /etc/hostname sudo sed -i 's/ubuntu/node-04/' /etc/hosts sudo reboot sudo apt update && sudo apt -y upgrade sudo sed -i 's/ubuntu/node-05/' /etc/hostname sudo sed -i 's/ubuntu/node-05/' /etc/hosts sudo reboot ### Disable swap sudo swapoff -a sudo sed -i 's/\/swap.img/#\/swap.img/' /etc/fstab free -h ### Installing a container runtime (containerd) curl -L github.com/containerd/containerd/releases/download/v1.7.3/containerd-1.7.3-linux-amd64.tar.gz -o containerd-1.7.3-linux-amd64.tar.gz sudo tar Cxzvf /usr/local containerd-1.7.3-linux-amd64.tar.gz sudo curl -L raw.githubusercontent.com/containerd/containerd/main/containerd.service -o /lib/systemd/system/containerd.service sudo systemctl daemon-reload sudo systemctl enable --now containerd #### Installing runc curl -L github.com/opencontainers/runc/releases/download/v1.1.8/runc.amd64 -o runc.amd64 sudo install -m 755 runc.amd64 /usr/local/sbin/runc #### Installing CNI plugins curl -L github.com/containernetworking/plugins/releases/download/v1.3.0/cni-plugins-linux-amd64-v1.3.0.tgz -o cni-plugins-linux-amd64-v1.3.0.tgz sudo mkdir -p /opt/cni/bin sudo tar Cxzvf /opt/cni/bin cni-plugins-linux-amd64-v1.3.0.tgz sudo mkdir /etc/containerd/ sudo sh -c 'containerd config default > /etc/containerd/config.toml' sudo sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml sudo systemctl restart containerd stat -fc %T /sys/fs/cgroup/ ### Install and configure prerequisites cat
@lohithvenkatesh4831
@lohithvenkatesh4831 6 күн бұрын
Can you compare gin vs Robyn the new python framework?
@AntonPutra
@AntonPutra 5 күн бұрын
ok, i'll take a look!
@Antonio-ib6ii
@Antonio-ib6ii 11 ай бұрын
Very interesting video. Thank
@AntonPutra
@AntonPutra 11 ай бұрын
Thanks, Antonio! Any suggestions for the next benchmark?
@CsAlchemy-eg6ch
@CsAlchemy-eg6ch 6 ай бұрын
Very great content , thanks
@AntonPutra
@AntonPutra 6 ай бұрын
Thank you!!
@ievgenmajor3301
@ievgenmajor3301 11 ай бұрын
great content!
@AntonPutra
@AntonPutra 11 ай бұрын
Thanks, Ievgen! Any suggestions for the next benchmark?
@pietraderdetective8953
@pietraderdetective8953 8 ай бұрын
Do the performance benchmark for Quart please! It's the async version for Flask so you can use your Flask code and modify it a lil bit. Plenty of Flask extensions are working in Quart too! Cheers!
@AntonPutra
@AntonPutra 8 ай бұрын
thanks for the feedback, i'll see what i can do
@kittipongpiyawanno315
@kittipongpiyawanno315 2 ай бұрын
It surprises me a little bit that both have more or less equivalent request rate. I expect more from Go.
@AntonPutra
@AntonPutra 2 ай бұрын
maybe not the fastest framework
@Antonio-yy2ec
@Antonio-yy2ec 11 ай бұрын
Thanks Anton!!!
@AntonPutra
@AntonPutra 11 ай бұрын
Thanks, Antonio! Any suggestions for the next benchmark?
@LukaLočičnik-v2k
@LukaLočičnik-v2k 11 ай бұрын
Great video! Can you do .NET vs Go next?
@az6876
@az6876 11 ай бұрын
I agree. But, if possible, with version 8 using AOT compilation.
@AntonPutra
@AntonPutra 11 ай бұрын
Thanks Luka, I've just added it to my list.
@AntonPutra
@AntonPutra 11 ай бұрын
ok, I'll check
@valerikehayov2393
@valerikehayov2393 10 ай бұрын
Thanks Anton, amazing as always. I can see you are using Grfana stacks for these statistics and reports, what about Elastic stack do you think Grafana stack is better? Could you please compare both solutions: Elastic stack with metric beat and Opentelemetry Elasticsearch exporter and Grafana with tempo?
@AntonPutra
@AntonPutra 10 ай бұрын
Grafana was one of the first to support Prometheus as a data source. For ELK, you need to use Elastic to store metrics, and the pipeline would be somewhat different and more complex, but, I will definitely create a comparison video at some point.
@valerikehayov2393
@valerikehayov2393 10 ай бұрын
@@AntonPutra Yep, completely agree. It’s kind a common use case to use Elastic or Opensearch in many companies, so I was wondering why. Thanks for the reply, awesome as always!
@AntonPutra
@AntonPutra 10 ай бұрын
@@valerikehayov2393 initially it was only for logs, but ELK trying to create universal solution for metrics/traces/logs but it's expensive. Try out loki, it indexes only labels and much cheaper to host
@valerikehayov2393
@valerikehayov2393 10 ай бұрын
@@AntonPutra yes I will try it.
@tHe0nLyNeXuS
@tHe0nLyNeXuS 11 ай бұрын
I wonder how FastAPI would perform, compared to Flask. I am assuming that since it supports asynchronous processing of requests, contrary to Flask (ASGI vs WSGI), it should overall reduce latency.
@AntonPutra
@AntonPutra 11 ай бұрын
Ok, I've just added it to my list.
@kamurashev
@kamurashev 11 ай бұрын
Great 👍
@AntonPutra
@AntonPutra 11 ай бұрын
Thanks, Kyrylo! Any suggestions for the next benchmark?
@aimericsorindev253
@aimericsorindev253 4 ай бұрын
I just discovered your channel, really great content ! What tools do you use to make your diagrams ?
@AntonPutra
@AntonPutra 4 ай бұрын
thanks, i use adobe suite
@mariusmuller4340
@mariusmuller4340 11 ай бұрын
Nice video, what tool do you use to make your graphics like minute 1:50?
@AntonPutra
@AntonPutra 11 ай бұрын
Thanks! Adobe Suite
@yuksgas
@yuksgas 10 ай бұрын
Please benchmark rust actix vs cpp drogon 😬
@sombiri9147
@sombiri9147 11 ай бұрын
This is good
@AntonPutra
@AntonPutra 11 ай бұрын
Thanks, Sombiri! Any suggestions for the next benchmark?
@DataPastor
@DataPastor 5 ай бұрын
Could you please make a similar benchmark with FastAPI+asyncpg+gunicorn on the Python side?
@AntonPutra
@AntonPutra 5 ай бұрын
sure, added to my list
@АртемШестаков-д9в
@АртемШестаков-д9в 9 ай бұрын
Please test FastApi framework with Go
@AntonPutra
@AntonPutra 9 ай бұрын
🫡
@VitaliiAkhmetzianov
@VitaliiAkhmetzianov 10 ай бұрын
Yo man you are super
@yunyang6267
@yunyang6267 11 ай бұрын
make a firebase vs supabase benchmark
@AntonPutra
@AntonPutra 11 ай бұрын
Ok, added to my list
@clintonndi1308
@clintonndi1308 11 ай бұрын
You got courses on udemy or something? Thanks
@AntonPutra
@AntonPutra 11 ай бұрын
Not yet, still a full time employee...
@clintonndi1308
@clintonndi1308 11 ай бұрын
@@AntonPutra It will make sense if you put up a course on Linux/system engineering or DevOps. Think about it. Thanks
@RomaDeveloper
@RomaDeveloper 10 ай бұрын
I made the first video about my project in python, i will be happy to get your feedback ❤
@alberkhan
@alberkhan 11 ай бұрын
Boss please do golang vs php swoole
@AntonPutra
@AntonPutra 11 ай бұрын
Ok, I've just added it to my list.
I'm Coming Around To Go...
21:33
Theo - t3․gg
Рет қаралды 115 М.
Шок. Никокадо Авокадо похудел на 110 кг
00:44
Every parent is like this ❤️💚💚💜💙
00:10
Like Asiya
Рет қаралды 8 МЛН
The Ultimate Tier Programming Tier List | Prime Reacts
26:57
ThePrimeTime
Рет қаралды 422 М.
Kubernetes Ingress networking
5:57
Project Calico
Рет қаралды 52 М.
You have to know these two Golang 1.23 changes!
16:38
Flo Woelki
Рет қаралды 3,2 М.
Why I Switched from Python to Go Lang for AI Deployment
6:12
Code In a Jiffy
Рет қаралды 58 М.
Go 1.23 Released
32:23
ThePrimeTime
Рет қаралды 97 М.
Kubernetes Canary Deployment (Manual vs Automated)
10:59
Anton Putra
Рет қаралды 10 М.
.NET (C#) vs. Fiber (Go): Performance Benchmark in Kubernetes #202
14:30