Tìm kiếm
36 kết quả cho “Python monolith”. Tìm không phân biệt dấu.
- Atlas: Our journey from a Python monolith to a managed platform Bài tóm tắt · Dropbox · 2021
…tps://dropbox.tech/infrastructure/atlas--our-journey-from-a-python-monolith-to-a-managed-platform) Bối cảnh - Metaserver , monolith Python từ 2007, hơn 3 triệu dòng; khoảng một nửa…
- Python at Scale: Strict Modules Bài tóm tắt · Instagram · 2019
…· Độ khó: Khó — [bài gốc](https://instagram-engineering.com/python-at-scale-strict-modules-c0bb9245c834) Bài thứ ba trong series "Python at scale" (sheet chỉ trỏ bài này). Medium c…
- Monolith và microservices — đi và quay lại Chủ đề Thành viên
Lúc nào nên tách hệ thống thành nhiều service, và cái giá của việc đó là gì? Các nguồn hiện có cho thấy đây không phải đường một chiều.
- How we rolled out one of the largest Python 3 migrations ever Bài tóm tắt · Dropbox · 2018
…opbox.tech/application/how-we-rolled-out-one-of-the-largest-python-3-migrations-ever) Bài đầu của một series về app desktop Dropbox; chỉ kể kiến trúc build và cách rollout. Bối cản…
- Building a Dependency Graph of Our Python Codebase Bài tóm tắt · Hudson River Trading · 2023
…https://www.hudsonrivertrading.com/hrtbeat/dependency-graph-python-codebase/) Bối cảnh - Trong khoảng năm năm, codebase Python hướng nghiên cứu của HRT lớn theo cấp số nhân lên hàn…
- 5-year Evolution of Ele.me's Transaction System - Part 1 Bài tóm tắt · Ele.me · 2020
…itMQ), (tách domain). Bối cảnh - 2012: Zeus là một ứng dụng Python gom các module lõi (đơn hàng, user, nhà hàng) trong một repo, chạy trên cùng máy. Module đơn hàng EOS (Ele.me Ord…
- Service-Oriented Architecture: Scaling the Uber Engineering Codebase As We Grow Bài tóm tắt · Uber · 2015
…àm IDL: định nghĩa kiểu và interface một chỗ, sinh code cho Python, Node, Go. - Công cụ phát hành client lên pip/npm. - Thư viện chịu lỗi lấy cảm hứng từ Hystrix (Netflix) và Finag…
- Đổi ngôn ngữ và runtime Chủ đề Thành viên
Ngôn ngữ ban đầu được chọn để làm nhanh. Khi lớn lên, nó có thể thành nút thắt về hiệu năng, latency, hoặc tổ chức code. Có ba hướng: tối ưu runtime đang dùng, cải tiến dần, hoặc viết lại có phạm vi.
- Hạ tầng nghiên cứu định lượng (dữ liệu thị trường, feature, backtest) Chủ đề Thành viên
Một quỹ định lượng hay công ty market making sống bằng vòng nghiên cứu: đặt giả thuyết → lấy dữ liệu → tạo feature → train model hay dựng tín hiệu → backtest/mô phỏng → đưa vào giao dịch thật → lặp lại. Theo Optiver, độ…
- Nền tảng nội bộ cho service (đường ray chung) Chủ đề Thành viên
Tách hệ thống thành nhiều phần (service, hoặc component trong một monolith) giải được bài toán tổ chức. Nhưng nếu mỗi team tự làm RPC, retry, log, metric, contract theo cách riêng, thì ta chỉ đổi một kiểu hỗn loạn lấy…
- Deploy và release an toàn Chủ đề Thành viên
Phần lớn sự cố bắt đầu bằng một thay đổi: code mới, cấu hình mới, hạ tầng mới. Khi hệ thống và tổ chức lớn lên, câu hỏi là làm sao đưa thay đổi lên production thường xuyên mà vẫn giới hạn được thiệt hại khi có lỗi.
- Migration không downtime Chủ đề Thành viên
Hệ thống đang chạy thật (gọi xe, chat, thiết kế) không được dừng, nhưng phải đổi ngôn ngữ, database hoặc hạ tầng bên dưới.
- Nền tảng ML (feature, training, serving, giám sát model) Chủ đề Thành viên
Model ML đầu tiên của một công ty thường được nhúng thẳng vào một service có sẵn, với feature tính trong vài script và train bằng một job riêng. Khi số model và số người làm model tăng, bốn chỗ cùng hỏng:
- Quản lý fleet và migrate code hàng loạt Chủ đề Thành viên
Khi số component (repo, service, pipeline, thư viện) tăng nhanh hơn số kỹ sư, chi phí của mỗi thay đổi xuyên suốt (nâng thư viện, vá bảo mật, đổi API nội bộ, khai tử dataset) tỉ lệ với số component chứ không với độ khó…
- CI và build ở quy mô lớn Chủ đề Thành viên
Lúc nhỏ, CI là "mỗi commit chạy hết build và test". Khi codebase và số commit tăng, chạy hết trở thành bất khả (Stripe 2026: chạy tuần tự mất bốn tháng), và thời gian chờ của một thay đổi không còn chỉ là thời gian…
- Dropbox Công ty Thành viên
Dropbox luôn là hybrid: metadata ở data center riêng, nội dung file trên S3. Ở ~500 PB họ tự xây Magic Pocket, theo Dropbox vì hiệu năng và unit economics . Cái giá kèm theo là phải tự dựng cả backbone và edge network .…
- Chi phí hạ tầng và build vs buy Chủ đề Thành viên
Khi còn nhỏ, chi phí hạ tầng là chuyện phụ và cloud là lựa chọn hiển nhiên. Khi lớn lên, hoá đơn có thể chiếm phần lớn giá vốn. Hai câu hỏi xuất hiện: tối ưu chi phí trên nền đang có thế nào, và khi nào nên tự xây (hoặc…
- Scale dọc trước khi scale ngang Chủ đề
Thêm máy (scale ngang) kéo theo độ phức tạp phân tán. Bắt mỗi máy làm được nhiều hơn (scale dọc, tối ưu) thì đơn giản hơn, nhưng có trần và dễ thành một điểm hỏng.
- Tracing phân tán và log theo request Chủ đề
Khi một request đi qua hàng chục service, metric của từng service cho biết có chậm, log của từng service cho biết từng mảnh; không cái nào trả lời "request này chậm vì đâu" hay "trang này tốn bao nhiêu". Tracing phân…
- Kiến trúc frontend Chủ đề Thành viên
Frontend bắt đầu là vài trang render ở server; lớn lên thành ứng dụng có trạng thái, nhiều team cùng sửa, và mỗi tính năng thêm vào là thêm byte phải tải. Ba trục lặp lại trong các nguồn: render ở đâu (server, client,…
- Observability và monitoring Chủ đề Thành viên
Lúc đầu, monitoring là vài dashboard và một công cụ cài sẵn; log đọc thẳng từ máy. Khi hệ lớn lên, chính hệ quan sát thành một hệ phân tán có bài toán riêng:
- Instagram Công ty Thành viên
Bắt đầu bằng stack "nhàm chán" (Django + Postgres + Redis + Memcached trên EC2). Nguyên tắc: đơn giản, không phát minh lại, dùng đồ đã kiểm chứng. 3 kỹ sư vận hành được 14 triệu user . Cùng năm họ giữ Postgres, chia…
- Jane Street Công ty Thành viên
Công ty giao dịch định lượng và market making, viết gần như mọi thứ bằng OCaml. Blog không kể chiến lược, nhưng kể khá nhiều về hạ tầng quanh chúng. Ở tầng công cụ, từ 2012 họ tự viết build system Jenga; năm 2014…
- Courier: Dropbox migration to gRPC Bài tóm tắt · Dropbox · 2019
…→ đổi RSA 2048 sang ECDSA P-256 cho ký, sửa gRPC-core/gRPC-python để có session resumption . Mã hoá đối xứng rẻ (khoảng 40 Gbps một core) nên khi tốc độ mã hoá ngang tốc độ memcpy…
- Uber Công ty Thành viên
Một vòng đủ: monolith → microservices → tổ chức lại microservices. Năm 2012–2013 Uber có hai monolith; khi lên hàng trăm kỹ sư thì tách. Lý do chủ yếu là tổ chức. Năm 2015 họ có 500+ service và phải chuẩn hoá contract…
- Distributed tracing at Pinterest with new open source tools Bài tóm tắt · Pinterest · 2017
…logic, (c) gửi span đi. Backend có service Thrift viết bằng Python, Java, Go, Node, C++; mỗi ngôn ngữ có một framework chung nên chỉ cần làm cho Python và Java, nơi có phần lớn ser…
- How we migrated Dropbox from Nginx to Envoy Bài tóm tắt · Dropbox · 2020
…hàng terabit băng thông. Cấu hình phần lớn tĩnh, sinh bằng Python 2 + Jinja2 + YAML (cả ba đều cho logic, không có mô hình dữ liệu sạch), mọi thay đổi phải deploy lại; phần động (…
- Lessons Learned From Scaling Uber To 2000 Engineers, 1000 Services, And 8000 Git Repositories Bài tóm tắt · Uber · 2016
…tch viết bằng Node.js (đang chuyển sang Go); core viết bằng Python (đang chuyển sang Go); Maps và data engineering dùng Python, Java; hệ thống metric dùng Go. Thay đổi chính (các b…
- Ele.me Công ty Thành viên
Nền tảng giao đồ ăn (sau thuộc Alibaba). Năm 2012 mọi module lõi nằm trong một ứng dụng Python tên Zeus. Năm 2015 team đơn hàng 4 người tách Zeus thành các service qua sáu bước, từ module trong repo chung tới deploy vật…
- What Powers Instagram: Hundreds of Instances, Dozens of Technologies Bài tóm tắt · Instagram · 2011
…. - 6 máy Memcached. - Bất đồng bộ: Gearman với ~200 worker Python, dùng để chia sẻ sang Twitter/Facebook và để fan-out feed , nhờ vậy đăng ảnh nhanh như nhau với user nhiều hay ít…
- Reddit Công ty Thành viên
Reddit chuyển service từ EC2 Auto Scaling Group (nhiều bản app mỗi VM + sidecar, Terraform/Puppet) sang Kubernetes, giữ nguyên các trừu tượng dev đã quen; mảng Ads tụt lại và chuyển sau, từng phụ thuộc một . Năm 2024,…
- Evolving Reddit's ML Model Deployment and Serving Architecture Bài tóm tắt · Reddit · 2021
…ush, email. Inference nằm trong Minsky , một service Thrift Python (baseplate.py) vốn phục vụ dữ liệu relevance (độ giống giữa subreddit, xu hướng của user) từ Cassandra và cache t…
- Using Fault Injection Testing to Improve DoorDash Reliability Bài tóm tắt · DoorDash · 2022
…đêm chạy danh sách đầy đủ). - Đưa vào DoorDash: mở rộng từ Python/Flask/HTTP sang Kotlin trên JVM và gRPC (phải sửa thuật toán lõi cho RPC trong code đồng thời); thêm instrumentat…
- AWS Multi-Account Architecture with Terraform, Yeoman, and Jenkins Bài tóm tắt · Slalom Build · 2018
…hi có resource gốc (khai báo, idempotent), không thì script Python SDK viết idempotent. Metadata mọi tài khoản ghi vào một bảng DynamoDB để script và Lambda tra cứu. Vì sao - Theo…
- Image Migration to Google Cloud Platform Bài tóm tắt · trivago · 2024
…ần DB liên quan sang AWS qua Kafka + Debezium, đổi PHP sang Python, thêm pipeline sinh ID ảnh mới nhưng phải giữ bảng ánh xạ ID cũ ↔ mới vì vài team còn dùng ID cũ. Kết quả là ba p…
- Why Uber Engineering Switched from Postgres to MySQL Bài tóm tắt · Uber · 2016
…to-mysql-migration/) Bối cảnh - Kiến trúc ban đầu: monolith Python + Postgres. 2016: microservices, và phần lớn chỗ trước đây dùng Postgres giờ dùng Schemaless , một lớp sharding t…