Σχετικά & Αρχιτεκτονική

2 λεπτά ανάγνωσης

Σχετικά & Αρχιτεκτονική

Το PgArachne™ λειτουργεί ως ένας ελαφρύς, υψηλής απόδοσης web server που τοποθετείται ανάμεσα στους HTTP clients σας και τη βάση δεδομένων PostgreSQL. Εξαλείφει την ανάγκη για παραδοσιακές backend γλώσσες (όπως Python, Node.js ή PHP) αντιστοιχίζοντας τα HTTP requests απευθείας σε functions της βάσης δεδομένων.

Βασικές Τεχνικές Δυνατότητες

  • JSON-RPC 2.0 Gateway: Όλες οι αλληλεπιδράσεις του API ακολουθούν αυστηρά την προδιαγραφή JSON-RPC 2.0. Δεν υπάρχουν REST endpoints να σχεδιάσετε· απλώς καλείτε SQL functions με το όνομά τους μέσω POST requests.
  • Native DB Authentication: Χωρίς ξεχωριστούς πίνακες χρηστών. Οι χρήστες συνδέονται με τα πραγματικά τους διαπιστευτήρια PostgreSQL για να λάβουν ένα JWT. Εναλλακτικά, οι service accounts μπορούν να χρησιμοποιήσουν μόνιμα API Tokens.
  • Role Masquerading: Το PgArachne™ συνδέεται ως proxy user, αλλά εκτελεί κάθε request χρησιμοποιώντας SET LOCAL ROLE για να μεταβεί στην ταυτότητα του αυθεντικοποιημένου χρήστη. Το Row-Level Security (RLS) λειτουργεί αυτόματα.
  • MCP (Model Context Protocol): Ένα native endpoint MCP επιτρέπει σε AI clients όπως το Claude Desktop, το Cursor και άλλα εργαλεία συμβατά με MCP να ανακαλύπτουν τις PostgreSQL functions σας ως εργαλεία και να τις καλούν απευθείας — χωρίς να απαιτείται προσαρμοσμένος κώδικας σύνδεσης. Η ίδια authentication και ασφάλεια ρόλων εφαρμόζεται. Resources (πίνακες/views) και prompt templates εκθέτονται επίσης μέσω MCP.
  • Ειδοποιήσεις Πραγματικού Χρόνου (SSE): Κάντε subscribe στα κανάλια NOTIFY της PostgreSQL μέσω SSE για live ενημερώσεις χωρίς polling.
  • Static File Server: Το PgArachne™ μπορεί να εξυπηρετήσει static αρχεία (HTML, JS, CSS), επιτρέποντάς σας να φιλοξενήσετε Single Page Applications (SPAs) ή το εργαλείο Explorer απευθείας.

Αυτή η αρχιτεκτονική απλοποιεί δραματικά το stack: Βάση Δεδομένων ↔ PgArachne ↔ Frontend/AI Agent.

Δομή endpoint: Όλα τα endpoints της βάσης δεδομένων μοιράζονται ένα κοινό πρόθεμα (προεπιλογή db, ρυθμιζόμενο μέσω API_PREFIX):
POST /{prefix}/{database}/jsonrpc — JSON-RPC 2.0 gateway
GET  /{prefix}/{database}/sse    — PostgreSQL NOTIFY stream
POST /{prefix}/{database}/mcp   — Model Context Protocol

Δείτε τις Λεπτομερείς Αρχιτεκτονικές Αποφάσεις