{"id":398,"date":"2021-03-11T03:14:30","date_gmt":"2021-03-11T03:14:30","guid":{"rendered":"https:\/\/lamsao.dev\/blogs\/?p=398"},"modified":"2021-03-27T10:47:37","modified_gmt":"2021-03-27T10:47:37","slug":"egany-back-end-tech-stack","status":"publish","type":"post","link":"https:\/\/egany.com\/blogs\/egany-back-end-tech-stack\/","title":{"rendered":"EGANY Back-End Tech Stack"},"content":{"rendered":"<p>Yo!<\/p>\n<p>Trong l\u1eddi b\u00e0i h\u00e1t Di\u1ec5n X\u01b0a c\u1ee7a nh\u1ea1c s\u0129 Tr\u1ecbnh C\u00f4ng S\u01a1n c\u00f3 c\u00e2u &quot;Ng\u00e0y sau s\u1ecfi \u0111\u00e1 c\u0169ng c\u1ea7n c\u00f3 nhau&quot;. V\u1eady kh\u00f4ng l\u00fd n\u00e0o \u0111\u00e3 c\u00f3 <a href=\"\/blogs\/egany-front-end-tech-stack\">EGANY Front-End Tech Stack<\/a> (<a href=\"\/blogs\/author\/thanh-nguyen\/\">Th\u00e0nh Nguy\u1ec5n<\/a>) m\u00e0 l\u1ea1i kh\u00f4ng c\u00f3 <a href=\"\/blogs\/egany-front-end-tech-stack\">EGANY Back-end Tech Stack<\/a> ^^.<\/p>\n<p>Tr\u01b0\u1edbc khi v\u00e0o chi ti\u1ebft ch\u00fang ta c\u1ea7n c\u00f3 m\u1ed9t c\u00e1i nh\u00ecn v\u1ec1 b\u1ed1i c\u1ea3nh c\u1ee7a nh\u1eefng g\u00ec s\u1ebd \u0111\u01b0\u1ee3c \u0111\u1ec1 c\u1eadp \u1edf b\u00ean d\u01b0\u1edbi.<br \/>\nL\u00e0 m\u1ed9t c\u00f4ng ty c\u00f4ng ngh\u1ec7, trong vi\u1ec7c ph\u00e1t tri\u1ec3n s\u1ea3n ph\u1ea9m digital, EGANY hi\u1ec3u \u0111\u01b0\u1ee3c vi\u1ec7c \u0111\u01b0a ra chi\u1ebfn l\u01b0\u1ee3c ph\u00e1t tri\u1ec3n \u0111\u00fang \u0111\u1eafn s\u1ebd quy\u1ebft \u0111\u1ecbnh th\u00e0nh b\u1ea1i. \u1ede giai \u0111o\u1ea1n \u0111\u1ea7u v\u1edbi ngu\u1ed3n l\u1ef1c h\u1ea1n ch\u1ebf (t\u00e0i ch\u00ednh, nh\u00e2n l\u1ef1c&#8230;) c\u00f9ng v\u1edbi th\u00e1ch th\u1ee9c ph\u1ea3i \u0111\u01b0a s\u1ea3n ph\u1ea9m \u0111\u1ebfn v\u1edbi ng\u01b0\u1eddi d\u00f9ng c\u00e0ng s\u1edbm c\u00e0ng t\u1ed1t, ch\u00fang t\u00f4i x\u00e1c \u0111\u1ecbnh c\u00e1c ti\u00eau ch\u00ed sau:<\/p>\n<ul>\n<li>Ph\u00e1t tri\u1ec3n nhanh ch\u00f3ng, li\u00ean t\u1ee5c \u0111\u1ec3 \u0111\u01b0a s\u1ea3n ph\u1ea9m s\u1edbm ra th\u1ecb tr\u01b0\u1eddng.<\/li>\n<li>S\u1ea3n ph\u1ea9m \u0111\u1ee7 t\u1ed1t, \u0111i\u1ec1u n\u00e0y kh\u00f4ng \u0111\u1ed3ng ngh\u0129a d\u00f9ng c\u00f4ng ngh\u1ec7 t\u1ed1t nh\u1ea5t.<\/li>\n<li>\u00cdt t\u1ed1n c\u00f4ng s\u1ee9c v\u00e0 chi ph\u00ed \u0111\u1ea7u t\u01b0 ban \u0111\u1ea7u.<\/li>\n<li>\u0110\u01b0\u1ee3c ti\u1ebfp c\u1eadn c\u00f4ng ngh\u1ec7, h\u1ecdc h\u1ecfi v\u00e0 ph\u00e1t tri\u1ec3n qua t\u1eebng ph\u00e1t s\u1ea3n ph\u1ea9m.<\/li>\n<\/ul>\n<p>V\u1edbi ni\u1ec1m \u0111am m\u00ea c\u00f4ng ngh\u1ec7, th\u00edch h\u1ecdc c\u00e1i m\u1edbi c\u1ee7a c\u1ea3 anh founder v\u00e0 nh\u00f3m ph\u00e1t tri\u1ec3n ^^, ch\u00fang t\u00f4i \u0111\u00e3 c\u00f9ng th\u1ea3o lu\u1eadn \u0111\u1ec3 l\u1ef1a ch\u1ecdn nh\u1eefng c\u00f4ng ngh\u1ec7 ph\u00f9 h\u1ee3p v\u1edbi c\u00e1c ti\u00eau ch\u00ed \u0111\u00e3 \u0111\u1eb7t ra. V\u1edbi vi\u1ec7c l\u1ef1a ch\u1ecdn ph\u00e1t tri\u1ec3n h\u1ec7 th\u1ed1ng theo h\u01b0\u1edbng <strong>microservices<\/strong>(tri\u1ec3n khai theo h\u01b0\u1edbng v\u1eeba \u0111\u1ee7) n\u00ean c\u00e1c c\u00f4ng ngh\u1ec7 \u0111\u01b0\u1ee3c l\u1ef1a ch\u1ecdn c\u0169ng ph\u1ea3i ph\u00f9 h\u1ee3p v\u1edbi ki\u1ebfn tr\u00fac n\u00e0y. Okay, gi\u1edd c\u00f9ng ng\u1ed3i xu\u1ed1ng u\u1ed1ng ly tr\u00e0 v\u00e0 c\u00f9ng kh\u00e1m ph\u00e1 nh\u1eefng c\u00f4ng ngh\u1ec7 hi\u1ec7n t\u1ea1i EGANY \u0111ang tri\u1ec3n khai cho s\u1ea3n ph\u1ea9m c\u1ee7a m\u00ecnh nh\u00e9.<\/p>\n<h2>Application and Data<\/h2>\n<h3>Nodejs<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/nodejs-local-256.png\" alt=\"NodeJS Logo\" \/><\/p>\n<p><a href=\"https:\/\/nodejs.org\/en\/\" rel=\"nofollow noopener\" target=\"_blank\">Node.js<\/a> &#8211; &quot;Node.js\u00ae is a JavaScript runtime built on Chrome&#8217;s V8 JavaScript engine.&quot;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>M\u00e3 ngu\u1ed3n m\u1edf v\u00e0 \u0111\u01b0\u1ee3c c\u1eadp nh\u1eadt li\u00ean t\u1ee5c.<\/li>\n<li>C\u1ed9ng \u0111\u1ed3ng v\u1edbi s\u1ed1 l\u01b0\u1ee3ng th\u00e0nh vi\u00ean l\u1edbn v\u00e0 n\u0103ng \u0111\u1ed9ng.<\/li>\n<li>T\u00e0i li\u1ec7u d\u1ec5 ti\u1ebfp c\u1eadn v\u00e0 \u0111\u1ea7y \u0111\u1ee7.<\/li>\n<li>C\u00f3 th\u1ec3 ph\u00e1t tri\u1ec3n nhanh ch\u00f3ng v\u1edbi kho node modules \u0111\u1ed3 s\u1ed9 v\u1edbi c\u00f4ng c\u1ee5 qu\u1ea3n l\u00fd nh\u01b0 <a href=\"https:\/\/www.npmjs.com\/\" rel=\"nofollow noopener\" target=\"_blank\">npmjs<\/a> hay <a href=\"https:\/\/yarnpkg.com\/\" rel=\"nofollow noopener\" target=\"_blank\">yarn<\/a>.<\/li>\n<li>C\u00f3 th\u1ec3 s\u1eed d\u1ee5ng javascript ho\u1eb7c typescript. \u0110i\u1ec1u n\u00e0y t\u1ea1o ra s\u1ef1 th\u1ed1ng nh\u1ea5t t\u1eeb front-end \u0111\u1ebfn back-end, t\u1ea1o \u0111i\u1ec1u ki\u1ec7n trong vi\u1ec7c trao \u0111\u1ed5i v\u00e0 h\u1ecdc t\u1eadp n\u00e2ng cao gi\u1eefa c\u00e1c \u0111\u1ed9i d\u1ef1 \u00e1n v\u1edbi nhau, th\u1eadt tuy\u1ec7t v\u1edbi ph\u1ea3i kh\u00f4ng ^^.<\/li>\n<\/ul>\n<h3>MongoDB<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/mongodb-logo.png\" alt=\"Mongodb Logo\" \/><\/p>\n<p><a href=\"https:\/\/www.mongodb.com\" rel=\"nofollow noopener\" target=\"_blank\">MongoDB<\/a> &#8211; &quot;MongoDB is a general purpose, document-based, distributed database built for modern application developers and for the cloud era.&quot;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>Mi\u1ec5n ph\u00ed.<\/li>\n<li>C\u00f3 h\u1ed7 tr\u1ee3 cloud &#8211; <a href=\"https:\/\/www.mongodb.com\/cloud\/atlas\" rel=\"nofollow noopener\" target=\"_blank\">MongoDB Atlas<\/a>.<\/li>\n<li>T\u00e0i li\u1ec7u d\u1ec5 ti\u1ebfp c\u1eadn v\u00e0 \u0111\u1ea7y \u0111\u1ee7.<\/li>\n<li>C\u00f3 th\u01b0 vi\u1ec7n, package h\u1ed7 tr\u1ee3 nodejs.<\/li>\n<li>Tri\u1ec3n khai \u0111\u01a1n gi\u1ea3n.<\/li>\n<\/ul>\n<h3>Redis<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/redis-logo.png\" alt=\"Redis Logo\" \/><\/p>\n<p><a href=\"https:\/\/redis.io\/\" rel=\"nofollow noopener\" target=\"_blank\">Redis<\/a> &#8211; &quot;Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker&#8230;&quot;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>M\u00e3 ngu\u1ed3n m\u1edf.<\/li>\n<li>C\u00f3 h\u1ed7 tr\u1ee3 cloud b\u1edfi Google, AzureAzure, AWS&#8230; Chi ti\u1ebft xem tai <a href=\"https:\/\/redislabs.com\/\" rel=\"nofollow noopener\" target=\"_blank\">Redislabs<\/a><\/li>\n<li>\u0110\u01b0\u1ee3c s\u1eed d\u1ee5ng ph\u1ed5 bi\u1ebfn.<\/li>\n<li>Kh\u00f4ng ch\u1ec9 cache, redis c\u00f2n h\u1ed7 tr\u1ee3 c\u00e1c nhu c\u1ea7u kh\u00e1c nh\u01b0 queue, message broker&#8230;<\/li>\n<li>Tri\u1ec3n khai \u0111\u01a1n gi\u1ea3n.<\/li>\n<li>H\u1ed7 tr\u1ee3 nhi\u1ec1u ng\u00f4n ng\u1eef.<\/li>\n<li>C\u00f3 th\u01b0 vi\u1ec7n, package h\u1ed7 tr\u1ee3 nodejs.<\/li>\n<\/ul>\n<h3>MySQL<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/logo-mysql-170x115-1.png\" alt=\"MySQL Logo\" \/><\/p>\n<p><a href=\"https:\/\/www.mysql.com\/\" rel=\"nofollow noopener\" target=\"_blank\">MySQL<\/a> &#8211; &quot;Many of the world&#8217;s largest and fastest-growing organizations including Facebook, Google, Adobe, Alcatel Lucent and Zappos rely on MySQL to save time and money powering their high-volume Web sites, business-critical systems and packaged software.&quot;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>M\u00e3 ngu\u1ed3n m\u1edf.<\/li>\n<li>C\u00f3 h\u1ed7 tr\u1ee3 cloud.<\/li>\n<li>\u0110\u01b0\u1ee3c s\u1eed d\u1ee5ng ph\u1ed5 bi\u1ebfn.<\/li>\n<li>Tri\u1ec3n khai \u0111\u01a1n gi\u1ea3n.<\/li>\n<li>H\u1ed7 tr\u1ee3 nhi\u1ec1u ng\u00f4n ng\u1eef.<\/li>\n<li>C\u00f3 th\u01b0 vi\u1ec7n, package h\u1ed7 tr\u1ee3 nodejs.<\/li>\n<\/ul>\n<h3>RabbitMQ<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/rabbitmq-logo.png\" alt=\"Rabbitmq Logo\" \/><\/p>\n<p><a href=\"https:\/\/www.rabbitmq.com\/\" rel=\"nofollow noopener\" target=\"_blank\">RabbitMQ<\/a> &#8211; &quot;RabbitMQ is the most widely deployed open source message broker.&quot;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>M\u00e3 ngu\u1ed3n m\u1edf.<\/li>\n<li>C\u00f3 h\u1ed7 tr\u1ee3 cloud &#8211; <a href=\"https:\/\/www.cloudamqp.com\/\" rel=\"nofollow noopener\" target=\"_blank\">CloudAMQP<\/a>.<\/li>\n<li>T\u00e0i li\u1ec7u d\u1ec5 ti\u1ebfp c\u1eadn v\u00e0 \u0111\u1ea7y \u0111\u1ee7.<\/li>\n<li>C\u00f3 th\u01b0 vi\u1ec7n, package h\u1ed7 tr\u1ee3 nodejs.<\/li>\n<li>Tri\u1ec3n khai \u0111\u01a1n gi\u1ea3n.<\/li>\n<li>\u0110\u00e1p \u1ee9ng nhu c\u1ea7u ph\u00e1t tri\u1ec3n theo h\u01b0\u1edbng s\u1ef1 ki\u1ec7n.<\/li>\n<\/ul>\n<h3>Caddy Server<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/caddy-logo.png\" alt=\"Caddy Logo\" \/><\/p>\n<p><a href=\"https:\/\/caddyserver.com\/\" rel=\"nofollow noopener\" target=\"_blank\">Caddy Server<\/a> &#8211; &quot;Caddy 2 is a powerful, enterprise-ready, open source web server with automatic HTTPS written in Go&quot;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>Mi\u1ec5n ph\u00ed.<\/li>\n<li>D\u1ec5 tri\u1ec3n khai.<\/li>\n<li>T\u1ef1 \u0111\u1ed9ng gia h\u1ea1n SSL.<\/li>\n<\/ul>\n<h2>DevOps<\/h2>\n<h3>Docker<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/docker-logo-300x77.png\" alt=\"Docker Logo\" \/><\/p>\n<p><a href=\"https:\/\/www.docker.com\/\" rel=\"nofollow noopener\" target=\"_blank\">Docker<\/a> &#8211; &quot;&#8230; Docker simplifies and accelerates your workflow, while giving developers the freedom to innovate with their choice of tools, application stacks, and deployment environments for each project.&quot; &#8211; Tr\u00edch t\u1eeb <a href=\"https:\/\/www.docker.com\/why-docker\" rel=\"nofollow noopener\" target=\"_blank\">Why docker?<\/a><\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>M\u00e3 ngu\u1ed3n m\u1edf.<\/li>\n<li>C\u00f3 h\u1ed7 tr\u1ee3 phi\u00ean b\u1ea3n doanh nghi\u1ec7p.<\/li>\n<li>C\u00f4ng c\u1ee5 h\u1ed7 tr\u1ee3 tuy\u1ec7t v\u1edbi trong h\u1ec7 sinh th\u00e1i docker nh\u01b0: Docker Compose, Docker Desktop, Docker Hub&#8230;<\/li>\n<li>C\u00f3 t\u00e0i li\u1ec7u h\u01b0\u1edbng d\u1eabn.<\/li>\n<li>H\u1ed7 tr\u1ee3 cluster v\u1edbi <strong>Docker Swarm<\/strong> &#8211; M\u1ed9t l\u1ef1a ch\u1ecdn t\u1ed1t \u0111\u1ec3 quicks-start trong nh\u1eefng ng\u00e0y \u0111\u1ea7u l\u00e0m quen v\u1edbi Microservices.<\/li>\n<li>Tri\u1ec3n khai \u0111\u01a1n gi\u1ea3n v\u00e0 nhanh ch\u00f3ng v\u1edbi m\u1ed9t s\u1ed1 b\u01b0\u1edbc trong t\u00e0i li\u1ec7u h\u01b0\u1edbng d\u1eabn.<\/li>\n<\/ul>\n<h3>Portainer<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/portainer-logo-300x96.png\" alt=\"Portainer Logo\" \/><\/p>\n<p><a href=\"https:\/\/www.portainer.io\/\" rel=\"nofollow noopener\" target=\"_blank\">Portainer<\/a> &#8211; &quot;Container management made easy. Portainer is the definitive open source container management tool for Kubernetes, Docker, Docker Swarm and Azure ACI. It allows anyone to deploy and manage containers without the need to write code.&quot;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>M\u00e3 ngu\u1ed3n m\u1edf.<\/li>\n<li>H\u1ed7 tr\u1ee3 phi\u00ean b\u1ea3n doanh nghi\u1ec7p.<\/li>\n<li>Tri\u1ec3n khai d\u1ec5 d\u00e0ng.<\/li>\n<li>S\u1eed d\u1ee5ng \u0111\u01a1n gi\u1ea3n.<\/li>\n<\/ul>\n<h3>Telegram<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/telegram-logo-150x150.png\" alt=\"Telegram Logo\" \/><\/p>\n<p><a href=\"https:\/\/telegram.org\/\" rel=\"nofollow noopener\" target=\"_blank\">Telegram<\/a> &#8211; &quot;Telegram a new era of messaging&quot;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>Mi\u1ec5n ph\u00ed.<\/li>\n<li>H\u1ed7 tr\u1ee3 \u1ee9ng d\u1ee5ng ch\u1ea1y \u0111a n\u1ec1n t\u1ea3ng v\u00e0 thi\u1ebft b\u1ecb.<\/li>\n<li>T\u1eadn d\u1ee5ng t\u00ednh n\u0103ng th\u00f4ng b\u00e1o.<\/li>\n<li>D\u1ec5 d\u00e0ng s\u1eed d\u1ee5ng v\u00e0 t\u00edch h\u1ee3p.<\/li>\n<li>\u1ede \u0111\u00e2y t\u1eadn d\u1ee5ng \u0111\u1ec3 nh\u1eadn th\u00f4ng b\u00e1o khi h\u1ec7 th\u1ed1ng c\u00f3 v\u1ea5n \u0111\u1ec1 x\u1ea3y ra.<\/li>\n<\/ul>\n<h2>M\u1ed9t s\u1ed1 c\u00f4ng ngh\u1ec7 kh\u00e1c<\/h2>\n<h3>Javascript<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/02\/javascript-thumb-150x150.jpg\" alt=\"JavaScript Logo\" \/><\/p>\n<p><a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/JavaScript\" rel=\"nofollow noopener\" target=\"_blank\">Javascript<\/a> &#8211; &quot;JavaScript (JS) is a lightweight, interpreted, or just-in-time compiled programming language with first-class functions.&quot;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>Mi\u1ec5n ph\u00ed.<\/li>\n<li>\u0110\u01b0\u1ee3c s\u1eed d\u1ee5ng r\u1ed9ng r\u00e3i.<\/li>\n<li>C\u1ea3 front-end v\u00e0 back-end \u0111\u1ec3 d\u00f9ng \u0111\u1ec3 ph\u00e1t tri\u1ec3n.<\/li>\n<li>\u0110\u01a1n gi\u1ea3n \u0111\u1ec3 ti\u1ebfp c\u1eadn.<\/li>\n<li>\u0110\u01b0\u1ee3c d\u00f9ng \u0111\u1ec3 t\u1ea1o ra NodeJS.<\/li>\n<\/ul>\n<h3>TypeScript<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/ts-logo-128.png\" alt=\"TypeScript Logo\" \/><\/p>\n<p><a href=\"https:\/\/www.typescriptlang.org\/\" rel=\"nofollow noopener\" target=\"_blank\">TypeScript<\/a> &#8211; &quot;Typed JavaScript at Any Scale.<br \/>\nTypeScript extends JavaScript by adding types.<br \/>\nBy understanding JavaScript, TypeScript saves you time catching errors and providing fixes before you run code.<br \/>\nAny browser, any OS, anywhere JavaScript runs. Entirely Open Source.&quot;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>Mi\u1ec5n ph\u00ed.<\/li>\n<li>\u0110\u01b0\u1ee3c s\u1eed d\u1ee5ng ng\u00e0y c\u00e0ng r\u1ed9ng r\u00e3i.<\/li>\n<li>C\u1ea3 front-end v\u00e0 back-end \u0111\u1ec3 d\u00f9ng \u0111\u1ec3 ph\u00e1t tri\u1ec3n.<\/li>\n<li>H\u1ed7 tr\u1ee3 ph\u00e1t tri\u1ec3n m\u00e3 ngu\u1ed3n ch\u1ea5t l\u01b0\u1ee3ng nh\u1ea5t l\u00e0 \u0111\u1ed1i v\u1edbi back-end.<\/li>\n<\/ul>\n<h3>ExpressJS<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/express-facebook-share-e1616257684165.png\" alt=\"ExpressJS Logo\" \/><\/p>\n<p><a href=\"https:\/\/expressjs.com\/\" rel=\"nofollow noopener\" target=\"_blank\">ExpressJS<\/a> &#8211; &quot;Fast, unopinionated, minimalist web framework for Node.js&#8217;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>Mi\u1ec5n ph\u00ed.<\/li>\n<li>\u0110\u01b0\u1ee3c s\u1eed d\u1ee5ng r\u1ed9ng r\u00e3i.<\/li>\n<li>\u0110\u01b0\u1ee3c ph\u00e1t tri\u1ec3n v\u00e0 c\u1eadp nh\u1eadt li\u00ean t\u1ee5c.<\/li>\n<li>D\u1ec5 ti\u1ebfp c\u1eadn.<\/li>\n<\/ul>\n<h3>BullJS<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/bulljslogo-e1616261323724.png\" alt=\"BullJS Logo\" \/><\/p>\n<p><a href=\"https:\/\/github.com\/OptimalBits\/bull\" rel=\"nofollow noopener\" target=\"_blank\">BullJS<\/a> &#8211; &quot;The fastest, most reliable, Redis-based queue for Node.<br \/>\nCarefully written for rock solid stability and atomicity.&quot;<\/p>\n<p>Ti\u00eau ch\u00ed l\u1ef1a ch\u1ecdn:<\/p>\n<ul>\n<li>Mi\u1ec5n ph\u00ed.<\/li>\n<li>D\u1ec5 ti\u1ebfp c\u1eadn.<\/li>\n<li>H\u1ed7 tr\u1ee3 NodeJS.<\/li>\n<\/ul>\n<p>V\u1eady l\u00e0 ch\u00fang ta \u0111\u00e3 c\u00f9ng kh\u00e1m ph\u00e1 nh\u1eefng c\u00f4ng ngh\u1ec7 \u0111ang \u0111\u01b0\u1ee3c \u00e1p d\u1ee5ng t\u1ea1i EGANY. M\u1eb7c d\u00f9 b\u1ecb \u1ea3nh h\u01b0\u1edfng b\u1edfi \u0111\u1ee3t b\u00f9ng ph\u00e1t c\u1ee7a d\u1ecbch b\u1ec7nh covid-19, nh\u01b0ng c\u00e1c s\u1ea3n ph\u1ea9m c\u1ee7a EGANY v\u1eabn \u0111\u01b0\u1ee3c kh\u00e1ch h\u00e0ng s\u1eed d\u1ee5ng, \u1ee7ng h\u1ed9 v\u00e0 c\u00f3 nhi\u1ec1u ph\u1ea3n h\u1ed3i t\u00edch c\u1ef1c. \u0110\u1ec3 \u0111\u00e1p l\u1ea1i nh\u1eefng \u0111i\u1ec1u \u0111\u1ea5y, trong th\u1eddi gian t\u1edbi chung t\u00f4i s\u1ebd c\u1ea3i ti\u1ebfn nh\u1eefng s\u1ea3n ph\u1ea9m hi\u1ec7n c\u00f3 v\u00e0 \u0111\u01b0a ra c\u00e1c s\u1ea3n ph\u1ea9m m\u1edbi t\u1ed1t h\u01a1n \u0111\u1ec3 \u0111\u00e1p \u1ee9ng nhu c\u1ea7u kh\u00e1ch h\u00e0ng c\u1ee7a m\u00ecnh. \u0110\u1ec3 \u0111\u1ed3ng h\u00e0nh c\u00f9ng m\u1ee5c ti\u00eau m\u1edbi, nh\u00f3m back-end c\u0169ng \u0111ang nghi\u00ean c\u1ee9u th\u00eam m\u1ed9t s\u1ed1 c\u00f4ng ngh\u1ec7 kh\u00e1c \u0111\u1ec3 chu\u1ea9n b\u1ecb cho giai \u0111o\u1ea1n ph\u00e1t tri\u1ec3n m\u1edbi. V\u1eady c\u00f9ng \u0111i\u1ec3m qua nh\u1eefng g\u00ec ch\u00fang t\u00f4i s\u1ebd d\u1ef1 \u0111\u1ecbnh h\u01b0\u1edbng \u0111\u1ebfn trong th\u1eddi gian t\u1edbi nh\u00e9<\/p>\n<h2>Nh\u1eefng c\u00f4ng ngh\u1ec7 m\u1edbi<\/h2>\n<h3>Kubernetes<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/kuberneteslogo-150x150.png\" alt=\"Kubernetes Logo\" \/><\/p>\n<p><a href=\"https:\/\/kubernetes.io\/\" rel=\"nofollow noopener\" target=\"_blank\">Kubernetes<\/a> &#8211; &quot;Production-Grade Container Orchestration<br \/>\nAutomated container deployment, scaling, and management&quot;<\/p>\n<h3>Netdata<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/netdata-logo-e1616261243842.png\" alt=\"Netdata Logo\" \/><\/p>\n<p><a href=\"https:\/\/www.netdata.cloud\/\" rel=\"nofollow noopener\" target=\"_blank\">Netdata<\/a> &#8211; &quot;Monitor everything in real time \u2013 for free.<br \/>\nTroubleshoot slowdowns and anomalies in your infrastructure with thousands of per-second metrics, meaningful visualizations, and insightful health alarms with zero configuration.&quot;<\/p>\n<h3>AWS S3<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/logo_amazon-s3_module-11-150x150.png\" alt=\"AWS S3 Logo\" \/><\/p>\n<p><a href=\"https:\/\/aws.amazon.com\/s3\/\" rel=\"nofollow noopener\" target=\"_blank\">AWS S3<\/a> &#8211; &quot;Object storage built to store and retrieve any amount of data from anywhere&quot;<\/p>\n<h3>Dapr<\/h3>\n<p><img decoding=\"async\" src=\"\/\/egany.cdn.vccloud.vn\/blogs\/wp-content\/uploads\/2021\/03\/dapr-logo.png\" alt=\"Dapr Logo\" \/><\/p>\n<p><a href=\"https:\/\/dapr.io\/\" rel=\"nofollow noopener\" target=\"_blank\">Dapr &#8211; Distributed Application Runtime<\/a> &#8211; &quot;Dapr helps developers build event-driven, resilient distributed applications. Whether on-premises, in the cloud, or on an edge device, Dapr helps you tackle the challenges that come with building microservices and keeps your code platform agnostic.&quot;<\/p>\n<h2>C\u00f3 th\u1ec3 b\u1ea1n ch\u01b0a bi\u1ebft<\/h2>\n<p>N\u1ebfu b\u1ea1n \u0111\u00e3 t\u1eebng h\u1ecfi kh\u00f4ng bi\u00eat c\u00e1c t\u1eadp \u0111o\u00e0n hay c\u00f4ng ty l\u1edbn nh\u01b0 Google, Microsoft, Facebook&#8230; h\u1ecd d\u00f9ng tech stack g\u00ec? C\u00f3 th\u1ec3 v\u00e0o <a href=\"https:\/\/stackshare.io\/\" rel=\"nofollow noopener\" target=\"_blank\">StackShare<\/a>.<\/p>\n<h2>L\u1eddi k\u1ebft<\/h2>\n<p>L\u1ef1a ch\u1ecdn c\u00f3 ph\u00f9 h\u1ee3p hay kh\u00f4ng? Ch\u1ec9 c\u00f3 tri\u1ec3n khai v\u00e0 \u0111\u01b0a v\u00e0o ho\u1ea1t \u0111\u1ed9ng th\u00ec m\u1edbi c\u00f3 c\u00e2u tr\u1ea3 l\u1eddi cho c\u00e2u h\u1ecfi n\u00e0y. C\u00f2n b\u1ea1n th\u00ec sao? H\u00e3y chia s\u1ebb c\u1ea3m ngh\u0129 \u1edf b\u00ean d\u01b0\u1edbi ph\u1ea7n b\u00ecnh lu\u1eadn nh\u00e9.<\/p>\n<p>Th\u00e2n ch\u00e0o v\u00e0 h\u1eb9n g\u1eb7p l\u1ea1i.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Yo! Trong l\u1eddi b\u00e0i h\u00e1t Di\u1ec5n X\u01b0a c\u1ee7a nh\u1ea1c s\u0129 Tr\u1ecbnh C\u00f4ng S\u01a1n c\u00f3 c\u00e2u &quot;Ng\u00e0y sau s\u1ecfi \u0111\u00e1 c\u0169ng c\u1ea7n c\u00f3 nhau&quot;. V\u1eady kh\u00f4ng l\u00fd n\u00e0o \u0111\u00e3 c\u00f3 EGANY Front-End Tech Stack (Th\u00e0nh Nguy\u1ec5n) m\u00e0 l\u1ea1i kh\u00f4ng c\u00f3 EGANY Back-end Tech Stack ^^. Tr\u01b0\u1edbc khi v\u00e0o chi ti\u1ebft ch\u00fang ta c\u1ea7n c\u00f3 m\u1ed9t c\u00e1i nh\u00ecn v\u1ec1 b\u1ed1i c\u1ea3nh c\u1ee7a nh\u1eefng g\u00ec s\u1ebd \u0111\u01b0\u1ee3c \u0111\u1ec1 c\u1eadp \u1edf b\u00ean d\u01b0\u1edbi. L\u00e0 m\u1ed9t c\u00f4ng ty c\u00f4ng ngh\u1ec7, trong vi\u1ec7c ph\u00e1t tri\u1ec3n s\u1ea3n ph\u1ea9m digital, EGANY hi\u1ec3u \u0111\u01b0\u1ee3c vi\u1ec7c \u0111\u01b0a ra chi\u1ebfn l\u01b0\u1ee3c ph\u00e1t tri\u1ec3n \u0111\u00fang \u0111\u1eafn s\u1ebd quy\u1ebft \u0111\u1ecbnh th\u00e0nh b\u1ea1i. \u1ede<\/p>\n","protected":false},"author":4,"featured_media":426,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[27],"tags":[53,47,49,52,50,31,44,43,48,45,46,30,51],"_links":{"self":[{"href":"https:\/\/egany.com\/blogs\/wp-json\/wp\/v2\/posts\/398"}],"collection":[{"href":"https:\/\/egany.com\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/egany.com\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/egany.com\/blogs\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/egany.com\/blogs\/wp-json\/wp\/v2\/comments?post=398"}],"version-history":[{"count":0,"href":"https:\/\/egany.com\/blogs\/wp-json\/wp\/v2\/posts\/398\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/egany.com\/blogs\/wp-json\/wp\/v2\/media\/426"}],"wp:attachment":[{"href":"https:\/\/egany.com\/blogs\/wp-json\/wp\/v2\/media?parent=398"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/egany.com\/blogs\/wp-json\/wp\/v2\/categories?post=398"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/egany.com\/blogs\/wp-json\/wp\/v2\/tags?post=398"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}