Bản gốc tiếng Anh: https://argusic.com/subject/pg-net

pg_net

Một phần mở rộng PostgreSQL cho phép thực hiện các yêu cầu HTTP/HTTPS không đồng bộ (không chặn) với SQL.

Chạy đượcnguồn: GitHubtrang chủ dự ánPythonApache-2.0commit 5fb36dd982bc

Python, giấy phép Apache-2.0. Dự án tự gắn nhãn: http client, postgres, postgresql, postgresql extension, sql và supabase.

pg_net chạy được. Trên một máy sạch không có GPU, một agent của Argusic đã cài đặt nó trong 35 phút, gặp 7 lỗi và tự sửa hết mà không cần trợ giúp, và toàn bộ phiên làm việc được ghi lại.

PostgreSQL 16.4 with pg_net 0.20.4 preloaded is running, its background worker is up, the real nginx fixture serves localhost:8080 and 127.0.0.1:8888 with 200s, and the full 92-test pytest suite passes.

Kết quả agent đạt được trên máy sạch, bằng chính lời của nó. Cách đo

Argusic đo trên một máy mới mỗi lần. Mỗi con số đều link tới bằng chứng của nó. Điểm Argusic 60 trên 100 (trung bình điểm các lần chạy của dự án này).

Tóm tắt

kết luận
Chạy được
Điểm Argusic
60 / 100
chi phí của lần chạy kiểm chứng
0,24 USD (đo thực tế)
số lần chạy đã ghi
2
test gần nhất
lượt star
376
fork
44
issue đang mở
39
người theo dõi
28
dung lượng
1 MB
ngày tạo
push gần nhất

Dữ liệu dự án lấy từ GitHub, có link ở đầu trang, cập nhật . Dữ liệu test của Argusic (CC BY 4.0); mỗi con số đều link tới một trang run có đầy đủ log, bản ghi và mã sha256 của chúng.

Những gì đã đo

Lấy từ lần chạy quyết định kết luận này. Mỗi dòng là một giá trị được ghi lại, không phải ước tính.

Thời gian mất cho từng lỗi khi test pg_net, vẽ từ lần chạy được ghi lại
Mỗi cột là một lỗi agent đã ghi lại, kèm thời gian nó tốn. Vẽ từ lần chạy này, không lấy từ nguồn nào khác.

Những gì trục trặc, bằng chính lời của agent

Lời của chính agent, lỗi nặng nhất trước, không bao giờ viết lại thành lời khuyên.

  • partial-suite runs failed on leftover state (orphaned net schema, stale queue rows, pre-created pg_stat_statements/roles)10 phút
  • nginx failed: unknown directive if/echo and missing PCRE/zlib8 phút
  • make link failed: cannot find -lcurl (no curl dev package installed)5 phút
  • postgres startup failed: could not access file pg_stat_statements4 phút
  • pip install blocked by PEP 668 and psycopg import failed3 phút
  • tests could not connect: default socket path not writable and roles missing3 phút
Thời gian cài đặt
35 phút
Từ máy sạch đến khi xong
26 phút
Lỗi gặp và đã sửa
gặp 7, tự sửa 7 mà không cần người giúp
Cách chứng minh kết quả
pytest full suite exited 0 with '92 passed in 141.60s'; net.http_get/post/delete via pg_net worker against real nginx returned status_code 200 with expected bodies; psql showed pg_net 0.20.4 installed and 1 worker running; curl localhost:8080 returned 200
Số token model đã dùng
1.017.775
Commit chính xác đã test
5fb36dd982bc
Container image
sha256:cdd920bce783

Những gì chưa đo

Nửa còn lại, để bạn thấy rõ bằng chứng này đi xa tới đâu. Chỗ trống được ghi là chỗ trống và không bao giờ được lấp vào.

Bộ nhớ GPU cao nhất
lần này chạy trên máy CPU, nên không có GPU để đo
Hoạt động khi chạy lâu
mỗi lần thử dùng cấu hình nhỏ nhất có trong tài liệu và một khoảng thời gian cố định, nên đây là đo xem nó có chạy hay không, không đo nó chịu tải ra sao

Đoạn cuối của bản ghi

Những dòng cuối của phiên terminal đã quyết định kết luận này, đúng như khi được ghi lại.

- Launch: PostgreSQL cluster running, pg_net background worker up (`pg_stat_activity` shows 1 worke…
- Full test suite from clean DB state: `92 passed in 141.60s`, exit 0.
- Real end-to-end behavior: `net.http_get` → status 200 body `?x=1`; `net.http_post` → 200 body `{"…
**Errors fixed**
- `cannot find -lcurl` (no curl dev package) → linked system `libcurl.so.4`, headers from matching …
- `pg_stat_statements` missing at startup → built PG contrib module (4m).
- pg_net worker `role "" does not exist` → removed invalid `pg_net.username=''` config (2m).
- PEP 668 + missing psycopg binary → venv with `psycopg[binary]` (3m).
- Test env plumbing (socket dir `/tmp`, `runner`/`postgres` roles) (3m).
- nginx `if` directive needs rewrite module → built PCRE2+zlib, reconfigured nginx (8m).
- Initial partial-suite failures were stale-DB artifacts in the shared cluster; clean pre-state ful…
**Unverifiable in container**: kernel refused binding `::1` (error 99), so the 8888 fixture also li…

Xem lại toàn bộ phiên, mọi lệnh từ máy sạch tới thời điểm này.

Cách test

Một agent, một container, không có người giúp. Agent cài dự án theo đúng cách tài liệu của dự án hướng dẫn, chạy nó, và sửa những gì bị hỏng. Mọi thứ bên dưới được ghi lại đúng như đã diễn ra: phiên terminal, log và commit chính xác. Toàn bộ phương pháp.

Điểm mạnh và giới hạn

Dữ kiện đo được, không phải ý kiến. Cách viết nội dung.

Những gì suôn sẻ

  • Đạt trạng thái chạy được trên máy sạch, có ghi lại phiên làm việc.
  • Tự khắc phục cả 7 lỗi mà không cần người can thiệp, cho thấy các lỗi được ghi trong tài liệu đủ rõ để giải quyết.
  • Chạy được không cần GPU, nên không cần GPU để khởi động.
  • Giấy phép Apache-2.0, theo thông tin từ nơi lưu trữ dự án.
  • Đã đo 2 lần, nên kết quả không phải của một lần duy nhất.

Những gì không suôn sẻ, hoặc chưa biết

  • Mất 35 phút để cài đặt, chậm hơn trung vị của 4 dự án tương đương mà Argusic đã đo.

Trong 5 dự án http-client mà Argusic đã cài đặt và bấm giờ, pg_net đứng thứ 4 về tốc độ đạt trạng thái chạy được, và 4 trên 5 dự án đạt được trạng thái đó.

Phù hợp để dùng cho

  • Thử trên laptop hoặc máy chủ nhỏ: nó đạt trạng thái chạy được mà không cần GPU.

Cũng đã test, cùng lĩnh vực

Mỗi dự án ở đây đều được Argusic cài đặt và chạy trên máy sạch. Không có dự án nào chưa test xuất hiện ở đây.

Lịch sử chạy

test bởilần thửkết quảđiểmchi phí USDthời điểm
Argusic Runner2/3Chạy được100,000,24
Argusic Runner1/3Không chạy20,000,90

Chủ đề (từ GitHub)

http-clientpostgrespostgresqlpostgresql-extensionsqlsupabase

Nhúng badge

Markdown cho README của dự án. Badge link về trang này; điều khoản ở trang điều khoản.

[![Tested by Argusic](https://argusic.com/badge/pg_net.svg)](https://argusic.com/subject/pg-net)

Câu hỏi

pg_net có chạy được không?
Có. pg_net chạy được. Argusic đã cài đặt và khởi chạy nó trên một máy sạch trong 35 phút, gặp 7 lỗi trên đường đi, và ghi lại phiên làm việc.
Argusic đã test pg_net như thế nào?
Trên một máy mới, dùng một lần, mọi lệnh đều được ghi lại và repo được ghim ở commit 5fb36dd982bc. Có 2 lần thử được ghi lại, và toàn bộ phương pháp nằm ở trang phương pháp.
Test pg_net tốn bao nhiêu?
Lần chạy đưa ra kết luận này tốn 0,24 USD: chi phí máy và model thật, không phải giá niêm yết theo triệu token. Con số được ghi trên trang của lần chạy đó.
Cài đặt pg_net mất bao lâu?
35 phút trong lần chạy quyết định kết luận này, từ máy sạch đến trạng thái chạy được. Đó là một lần thử đo được, không phải số trung bình.
pg_net có cần GPU không?
Không cần để khởi động. Argusic đã đạt trạng thái chạy được trên một máy không có GPU.
Cài đặt pg_net thì gặp lỗi gì?
7 lỗi xảy ra trong lần chạy được ghi lại, và 7 lỗi đã được sửa mà không cần người giúp. Từng lỗi, cùng thời gian nó tốn, được liệt kê trên trang này.
pg_net so với các lựa chọn khác thế nào?
Trong 5 dự án http-client mà Argusic đã cài đặt và bấm giờ, pg_net đứng thứ 4 về tốc độ đạt trạng thái chạy được, và 4 trên 5 dự án đạt được trạng thái đó.
Bằng chứng cho pg_net ở đâu?
Cả 2 lần chạy được ghi lại đều nằm trên trang này, mỗi lần link tới log đầy đủ và terminal recording, được lưu kèm dấu vân tay sha256 để không thể bị sửa lén.

Discussion