Tìm kiếm
37 kết quả cho “PHP”. Tìm không phân biệt dấu.
- Taking PHP Seriously Bài tóm tắt · Slack · 2016
…g · Độ khó: Dễ — [bài gốc](https://slack.engineering/taking-php-seriously/) Bối cảnh - Slack viết phần lớn logic server bằng PHP. Đây là lựa chọn lạ vào năm 2016, dù Facebook, Wiki…
- A monolithic architecture for our clients' hundreds of versions: how we write and support tests Bài tóm tắt · Bumble · 2019
…clients-hundreds-of-versions-how-we-write-and-support-tests-php-e8fe0b79c0bc) Bối cảnh - Backend Badoo là monolith PHP 12 năm tuổi, khởi đầu không có test. Backend developer viết t…
- The AI Lied to Me — And That's When I Learned How to Use It Bài tóm tắt · Mercari · 2025
…đổi sang cách dễ: yêu cầu dùng Phan (công cụ phân tích tĩnh PHP sẵn có trên CI) để tìm mọi chỗ lưu Item trong transaction ở monolith PHP cũ; agent báo xong nhưng code là heuristic…
- Rebuilding our tech stack for the new Facebook.com Bài tóm tắt · Meta · 2020
…gn/) Bối cảnh - Facebook.com ra đời năm 2004 là một website PHP render ở server. Qua nhiều năm, từng lớp công nghệ được thêm vào cho tính năng tương tác; mỗi lớp làm site chậm thêm…
- Splitting a Monitoring Monolith into Separate Components Bài tóm tắt · trivago · 2018
…n phẩm. Bối cảnh - Team Website-Performance có một ứng dụng PHP nguyên khối (Symfony, Orchestra) kéo metric từ API của các CDN (ChinaCache, Edgecast…) và vài dịch vụ khác, đẩy vào…
- What it's like to work as an embedded microservices SRE Bài tóm tắt · Mercari · 2022
…cao điểm, nhiều service phụ thuộc. - Mercari API: monolith PHP có từ trước khi chuyển sang microservice; nhiều tính năng đã tách nhưng vẫn còn phần quan trọng, nhiều team cùng phá…
- Toward a Global Identity Platform Bài tóm tắt · Mercari · 2025
…dùng Nhật, và phần lớn hệ tài khoản vẫn nằm trong monolith PHP cũ ; việc tách sang microservices còn dang dở. - Đầu 2024: cho người dùng Đài Loan tạo tài khoản bằng email + mật kh…
- Đổ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.
- 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,…
- 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.
- Kiểm thử độ tin cậy (chaos, fault injection, mô phỏng tất định) Chủ đề Thành viên
Lỗi trong hệ phân tán là chắc chắn (máy chết, zone mất, dependency chậm, cấu hình sai), nhưng phần lớn lỗi nằm ở những tổ hợp hiếm mà test chức năng không chạm tới. Bài toán là chủ động gây lỗi để biết hệ thống phản ứng…
- 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.
- 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…
- 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:
- Xác thực và phân quyền (authn/authz) Chủ đề Thành viên
Ở monolith, mỗi dữ liệu thường chỉ có một đường vào, nên kiểm tra quyền nằm ngay đó: một hàm hasaccess?, một API mỗi resource. Khi hệ thống tách thành nhiều service, nhiều client, nhiều loại token, cả hai nửa đều vỡ:
- Mercari Công ty Thành viên
PaymentService của Merpay (2019) giữ nhất quán thanh toán qua nhiều service bằng cách tự làm ở tầng ứng dụng: chia pha + state machine, idempotency key bắt buộc, bù trừ kiểu TCC, đối soát và fault injection . Ba năm…
- Slack Công ty Thành viên
Slack bắt đầu bằng LAMP và giữ PHP vì môi trường của nó (mỗi request trạng thái sạch, vòng lặp sửa–tải lại). Họ cải tiến dần bằng HHVM và Hack thay vì viết lại . Tầng dữ liệu đi từ MySQL active-active shard theo…
- Allegro Công ty Thành viên
Allegro (Ba Lan) đi từ 3 developer với dữ liệu lưu trong file (1999) → scale bằng tự viết cache, connection pool, search engine bằng C trên Oracle (~2005) → framework tự chế trong cùng codebase (2008–2009, code mới vẫn…
- Evolution of our platform architecture Bài tóm tắt · Allegro · 2015
…mework "tự chế" trong cùng repo: - codebase hàng triệu dòng PHP viết kiểu thủ tục; viết code mới trong thư mục framework . Ưu: có kết quả nhanh, vẫn ra tính năng (tránh "câu chuyện…
- Catching bugs on the client-side: how we developed our error tracking system Bài tóm tắt · Bumble · 2020
…hai hệ: HockeyApp cho crash native, và một hệ tự viết bằng PHP (2014) cho lỗi JS: MySQL, một bảng cho mỗi phiên bản ứng dụng, giữ 10–20 bản gần nhất, tìm theo vài trường. - Micros…
- How Etsy caches: hashing, Ketama, and cache smearing Bài tóm tắt · Etsy · 2017
…k-aside cache (kết quả query DB, search, tính toán đắt) cho PHP và Java, và Varnish làm cache HTTP cho request nội bộ giữa API server (key gồm URL, query, header trong Vary như loc…
- Reducing Image File Size in the Photos Infrastructure Bài tóm tắt · Etsy · 2017
…thấy đúng ảnh sẽ hiển thị. Bản script ban đầu gọi shell từ PHP mất 15–20 giây với ảnh lớn; bỏ bước chuyển JPEG↔PNG (dssim đã so được JPEG) và port sang PHP để giữ ảnh trong bộ nhớ…
- Scaling Slack's Job Queue Bài tóm tắt · Slack · 2017
…của app giữ nguyên. - Kafkagate (Go, không trạng thái): app PHP/Hack POST HTTP, Kafkagate giữ kết nối tới broker. Ưu tiên sẵn sàng hơn nhất quán : chỉ chờ leader ack (rủi ro nhỏ mấ…
- trivago Công ty Thành viên
Service PSE-kafka đẩy giá khách sạn sang dịch vụ Ads bị consumer lag kéo dài (19 sự cố P1) dù CPU chỉ 10%. Năm 2026 một đợt điều tra tìm ra ba nút thắt cùng lúc (consumer tự viết từ 2019, độ trễ cố ý trong RAM, pool…
- Image Migration to Google Cloud Platform Bài tóm tắt · trivago · 2024
…nhãn (ML), chọn ảnh chính và gallery. - Khởi đầu: framework PHP nội bộ, RabbitMQ, worker trong data center, mọi pipeline dùng chung một DB . - Lần 1 (2018), sang AWS: input tăng từ…
- On WordPress Scaling and Performance, The Zillow Way Bài tóm tắt · Zillow · 2012
…qua Varnish, và code riêng cũng gọi wp cache . - App server PHP autoscale theo tải. - Chia DB theo khách: plugin HyperDB + thư viện Flexihash, consistent hashing (MD5) chọn DB serv…
- Bumble Công ty Thành viên
Bumble là tập đoàn hẹn hò sở hữu Badoo; bài 5/2019 trên blog bumble-tech kể cách backend PHP nguyên khối của Badoo được test khi tính năng lên server trước mọi client hàng tháng: SoftMocks cho code cũ đi kèm quy tắc…
- Etsy's Journey to TypeScript Bài tóm tắt · Etsy · 2021
…g comment tắt lint từng dòng. - Kiểu cho API: API viết bằng PHP; tận dụng việc sinh OpenAPI spec của API công khai, viết bộ sinh spec cho mọi endpoint nội bộ, dùng openapi-typescri…
- MemSQL Architecture - The Fast (MVCC, InMem, LockFree, CodeGen) And Familiar (SQL) Bài tóm tắt · MemSQL · 2012
…hai thứ: Memcached (KV trong RAM) và sinh code (HipHop dịch PHP sang C++). Ghép hai ý vào database: DB trong RAM nhưng giao diện là SQL thay vì KV. - Đối tác của Facebook đụng scal…
- Meta Công ty Thành viên
Facebook khởi đầu trên LAMP với mỗi trường đại học một DB; mở rộng bằng Memcache, rồi TAO, rồi data center riêng, edge cạnh ISP và region nhiều toà nhà. Giai đoạn 2010–2020 là các ca góc của hệ phân tán: bất nhất cache…
- Meta's Infrastructure Evolution and the Advent of AI Bài tóm tắt · Meta · 2025
…Bối cảnh Facebook khởi đầu trên LAMP (Linux, Apache, MySQL, PHP). Đến 2025 phục vụ hơn 3,4 tỷ người. Thay đổi chính - 2004–2010: scale phần mềm rồi scale vật lý. - Mỗi trường đại h…
- How Postman Engineering handles a million concurrent connections Bài tóm tắt · Postman · 2020
Service Sync là một trong những service đầu tiên của Postman: đồng bộ mọi hoạt động trên client với server qua WebSocket theo kiểu pub/sub. Ban đầu chỉ lo giao dịch DB (ví dụ cập nhật collection), dần ôm thêm việc thông…
- A Brief History of the UUID (KSUID) Bài tóm tắt · Segment · 2017
…iết bị di động), bug fork của OpenSSL làm một thư viện UUID PHP va chạm nhiều. Với 122 bit, phải có tới ~2^46 UUID thì xác suất va chạm mới ở mức 1/50 tỷ. - ID có thời gian: - Cass…
- Flannel: An Application-Level Edge Cache to Make Slack Scale Bài tóm tắt · Slack · 2017
Slack thiết kế cho team vài trăm người: khi khởi động, client gọi rtm.start nhận toàn bộ snapshot của team (user, channel, thành viên, tin mới nhất, DM...) rồi mở WebSocket nhận event real-time.
- Our Journey Migrating to AWS IMDSv2 Bài tóm tắt · Slack · 2023
Slack (2023) chạy khoảng 60.000 instance EC2 ở 17 region, hàng trăm AWS account (theo môi trường, theo team, đôi khi theo ứng dụng), nhiều team sở hữu. IMDS được dùng nhiều khi cấp phát máy và trong công cụ. Cấp phát…
- PIT Mutation Testing on CI/CD Pipeline Bài tóm tắt · Trendyol · 2021
…iên quan - · - Cùng bài toán: (mutation testing tự viết cho PHP, chọn test theo coverage) ·…
- Cloud Native MySQL Sharding with Vitess and Kubernetes Bài tóm tắt · Vitess · 2015
…(alpha): API Kubernetes 1.0, client chính thức Java/Python/PHP/Go (gRPC), chạy trên MySQL 5.6 ngoài MariaDB, backup/restore tích hợp với blob store, reparent dựa trên GTID cho fai…