11 repository-uri
Mechanisms that use backplanes to notify distributed nodes of cache changes to ensure consistency.
Distinct from Distributed Session Caching: Distinct from Distributed Session Caching: synchronizes any cached data via backplane, not just user sessions.
Explore 11 awesome GitHub repositories matching data & databases · Distributed Cache Synchronizers. Refine with filters or upvote what's useful.
dtm is a distributed transaction framework and polyglot transaction coordinator designed to maintain data consistency across microservices. It functions as a Saga orchestration engine and a two-phase message coordinator, ensuring that multi-service operations either succeed completely or roll back to a consistent state. The project distinguishes itself by supporting multiple consistency patterns, including Saga, TCC, XA, and outbox patterns, allowing users to select the appropriate model for their specific application requirements. It provides a polyglot integration layer via HTTP and gRPC, e
Uses a two-phase message pattern to atomically update the database and asynchronously update the cache for eventual consistency.
xorm is a relational mapper and object-relational mapping tool for Go. It translates Go structures into SQL queries and maps database rows back into native objects, providing a multi-dialect database driver that supports MySQL, PostgreSQL, SQLite, Oracle, SQL Server, and TiDB. The project features a read-write splitting manager that routes modification requests to a primary database and read requests to replicas. It includes a database schema synchronizer to automatically align table structures and indexes with application data models, as well as a fluent SQL query builder for constructing co
Ensures consistency between in-memory object caches and the database after record modifications.
Acest proiect este un framework distribuit de web crawling headless Chrome și de extracție a datelor. Funcționează ca un motor de randare JavaScript care utilizează un browser headless pentru a procesa pagini dinamice, extrăgând date structurate de pe site-uri web care necesită execuție JavaScript. Sistemul este conceput pentru colectarea scalabilă a datelor pe mai multe noduri, utilizând sincronizarea distribuită a sarcinilor și cache-uri partajate pentru a preveni munca duplicată. Se distinge prin capacitatea de a emula medii client specifice prin configurarea user-agent-urilor și a dimensiunilor viewport-ului, capturând în același timp dovezi vizuale precum capturi de ecran ale paginilor. Framework-ul acoperă gestionarea cuprinzătoare a crawl-ului, inclusiv programarea cererilor în cozi de prioritate, traversarea depth-first și breadth-first și respectarea fișierelor robots.txt și sitemap.xml. Oferă instrumente pentru limitarea concurenței, monitorizarea evenimentelor și streaming-ul datelor extrase în formate CSV sau JSON.
Uses distributed cache synchronizers to track requested URLs across multiple servers and prevent duplicate work.
JetCache este un framework de caching Java care oferă o interfață unificată pentru gestionarea datelor aplicației. Funcționează ca un manager de cache pe două niveluri, coordonând stocarea locală în memorie și cache-urile distribuite la distanță pentru a reduce latența rețelei și a îmbunătăți viteza de recuperare. Proiectul se distinge prin biblioteca sa de caching declarativ, care utilizează adnotări pentru a automatiza stocarea, expirarea și invalidarea rezultatelor metodelor. Include un sincronizator de cache distribuit pentru a menține consistența prin invalidarea intrărilor locale în instanțele clusterului și un instrument de blocare distribuită pentru a coordona accesul la resursele partajate. Framework-ul acoperă o gamă largă de capabilități de performanță și stabilitate, inclusiv recuperarea asincronă non-blocantă, reîmprospătarea automată a cache-ului în fundal și colapsarea cererilor pentru a preveni penetrarea cache-ului. De asemenea, oferă gestionare programatică a cache-ului, strategii de serializare pluggable și funcționalități de securitate precum filtrarea deserializării prin allow-list.
Broadcasts invalidation messages across a cluster to keep local memory caches consistent.
Opal este un motor de distribuție a politicilor și un sincronizator de date de autorizare în timp real. Servește ca un plan de gestionare pentru implementarea și monitorizarea motoarelor de politici distribuite, cum ar fi OPA și Cedar, în arhitecturi de microservicii. Proiectul centralizează administrarea politicilor și a datelor în timp ce implementează puncte de decizie descentralizate. Sistemul se distinge prin decuplarea codului de politici, gestionat prin version control, de datele de autorizare preluate din baze de date și API-uri externe. Utilizează un model de distribuție a stării bazat pe pub/sub pentru a trimite actualizări imediate către agenți prin WebSockets și webhooks, asigurându-se că agenții descentralizați mențin o stare sincronizată fără a se baza pe polling periodic. Platforma acoperă capabilități extinse, inclusiv izolarea politicilor multi-tenant prin distribuție scoped, monitorizarea sănătății agenților cu liveness probes și orchestrarea motoarelor de politici ca sidecar-uri. Oferă, de asemenea, mecanisme pentru caching local pentru a susține operarea offline și autentificarea securizată a clienților folosind token-uri semnate. Serverul de administrare poate fi implementat ca un container sau într-un cluster Kubernetes folosind un manager de pachete.
Automatically populates local policy engine caches by fetching application state from external databases and APIs.
Cerbos is an open-source authorization service that provides a centralized, language-agnostic engine for managing access control. It functions as a policy-as-code platform, allowing teams to define, test, and distribute authorization rules using declarative YAML or JSON configurations. By decoupling access logic from application code, it enables consistent permission enforcement across diverse service stacks. The project distinguishes itself through its ability to translate high-level authorization policies into native database query filters. This capability allows applications to enforce sec
Persists authorization policies to local disk to ensure continued operation during network outages.
FusionCache is a hybrid distributed caching library that coordinates local memory and distributed storage to balance access speed with global consistency. It functions as a resilient data access layer, utilizing a pluggable serialization framework to convert cached objects into various binary or text formats for compatibility across diverse storage environments. The system maintains cluster consistency through a distributed cache synchronizer that propagates invalidations and state updates across multiple nodes via a shared messaging backplane. It improves reliability by serving stale cache d
Propagates cache updates and invalidations across multiple application instances via a shared messaging backplane.
FusionCache is a .NET caching framework that manages local and distributed data storage. It functions as a hybrid cache implementation, combining fast in-memory storage with a distributed second-level cache to reduce latency and remote data fetches. The framework includes a cache stampede protector that ensures only one request fetches missing data while concurrent calls wait. It synchronizes data across multiple application nodes using a backplane and provides an observability-driven approach with built-in metrics, structured logging, and telemetry. The system covers a broad range of cachin
Uses a backplane to notify multiple application nodes of cache changes for data consistency.
Ever Gauzy is an integrated business management suite providing an ERP and CRM framework for professional services automation. It functions as a multi-tenant SaaS platform that combines time tracking, billing, and human resource management into a unified system. The project is distinguished by its headless architecture, utilizing a REST and GraphQL API gateway to expose business operations. It features a Model Context Protocol server that allows AI assistants to interact with system data and execute functional tools for automated business workflows. The platform covers a broad operational su
Synchronizes cache and session data across multiple server instances using a remote store.
Message Bus is a messaging library for Ruby and Rack applications designed to facilitate real-time data broadcasting and inter-process communication. It provides a framework for pushing live updates to connected clients and synchronizing state across multiple application instances, ensuring consistent data delivery in scaled environments. The library distinguishes itself through a flexible architecture that supports multiple storage backends, including Redis, PostgreSQL, and in-memory options. It functions as a persistent connection framework that serves as an alternative to traditional web s
Propagates cache invalidations across multiple application instances to maintain consistency in scaled environments.
This project is a feature flag library for Elixir applications, designed to manage and toggle application functionality at runtime. It provides a distributed system for controlling code paths without requiring new deployments, allowing developers to enable or disable features globally, for specific users, or for defined groups. The library distinguishes itself through a pluggable persistence framework that supports various storage backends, ensuring that flag configurations remain consistent across application restarts. It maintains state synchronization across distributed nodes using messagi
Synchronizes cache states across distributed application nodes using messaging backends to ensure consistent configuration.