awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Terry-Mao avatar

Terry-Mao/goim

0
View on GitHub↗
7,376 stele·1,796 fork-uri·Go·MIT·3 vizualizărigoim.io↗

Goim

goim

Features

  • Kafka-Driven Message Queue Servers - Provides a Kafka-driven message queue server for asynchronous, non-blocking fan-out delivery to subscribers.
  • Push Notification Servers - Delivers push notifications to single users, multiple users, rooms, or all clients in a scalable cluster.
  • Node Registries - Uses Redis as a node registry to track live cluster membership and route messages.
  • Binary Protocols - Implements a compact binary wire protocol for efficient message encoding and decoding.
  • Kafka - Queues outgoing messages through Kafka for non-blocking delivery, fan-out, and aggregated room delivery.
  • Kafka Message Queues - Queues outgoing messages through Kafka for asynchronous, non-blocking fan-out delivery.
  • Scalable Push Notification Platforms - Broadcasts messages to single users, multiple users, rooms, or all connected clients across a horizontally scalable cluster.
  • Asynchronous Queue Deliveries - Queues outgoing messages through Kafka so the sender does not block on delivery.
  • Connection Keepalives - Maintains persistent connections through application-level heartbeats and TCP keepalives.
  • Websocket Connection Managers - Handles WebSocket lifecycle including upgrade, read, and write operations for real-time communication.
  • Scalable - Manages persistent WebSocket and TCP connections at scale with heartbeat monitoring and horizontal scaling.
  • Redis-Based Node Registries - Tracks alive cluster nodes in Redis, removes dead nodes automatically, and routes messages by region or weight.
  • Multi-User Message Deliveries - Pushes messages to single users, multiple users, or all connected clients in a single operation across the cluster.
  • Protocol-Agnostic Transport Layers - Provides a unified internal interface accepting connections over both WebSocket and raw TCP.
  • Room-Based Pub-Sub Broadcasting - Broadcasts a single message to all members of a chat room simultaneously.
  • Real-Time Message Push - Delivers push notifications and messages to millions of concurrent users over WebSocket and TCP connections.
  • Multi-User Message Pushes - Sends the same message to multiple users simultaneously across the server cluster.
  • Single-User Message Pushes - Delivers a message to one specific user by routing through the cluster to the correct connection.
  • Heartbeat Frames - Ships application-level heartbeat frames over TCP and WebSocket to maintain persistent connections.
  • WebSocket and TCP Messaging Gateways - Maintains persistent connections over WebSocket and raw TCP with heartbeat monitoring and automatic dead connection cleanup.
  • Multi-Protocol Transports - Accepts client connections over both WebSocket and raw TCP through a unified interface.
  • Connection Heartbeats - Keeps persistent connections alive by exchanging periodic heartbeat signals over TCP, WebSocket, or HTTP.
  • Connection Health Monitors - Detects and drops dead connections using application-level heartbeats and TCP keepalives.
  • Node Health Tracking - Tracks node health via Redis heartbeats and removes dead nodes from the routing table automatically.
  • Horizontal Scaling Deployments - Adds or removes server modules without downtime to handle more connections.
  • Dynamic Module Scaling - Scales message processing horizontally by adding or removing dynamic job and logic modules.
  • Regional Routing - Directs messages to nodes in a specific geographic region to reduce latency and comply with data locality rules.
  • Message Aggregations - Aggregates multiple messages for the same room into a single batched delivery to reduce overhead.
  • Device-Specific Deliveries - Delivers push notifications to specific devices identified by unique device identifiers.
  • Cluster-Wide Broadcasting - Delivers a message to every connected user across the entire server cluster in a single operation.
  • Weighted Hash Rings - Distributes connections across nodes using a weighted consistent hash ring for balanced load.
  • Fan-Out Patterns - Delivers a single message to multiple subscribers up to a configurable maximum count.
  • Room Message Aggregations - Aggregates multiple messages for the same room into a single delivery to reduce network overhead.
  • Weighted Load Balancing - Distributes connections across nodes proportionally to their configured weight to balance load.
  • Subscriber Authentications - Rejects subscription requests from unauthenticated users, allowing only verified clients to receive messages.
  • Communication and Messaging - Distributed IM and push service.
  • Communication and Real-time - A high-concurrency IM and real-time push service.

Istoric stele

Graficul istoricului de stele pentru terry-mao/goimGraficul istoricului de stele pentru terry-mao/goim

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Întrebări frecvente

Ce face terry-mao/goim?

goim

Care sunt principalele funcționalități ale terry-mao/goim?

Principalele funcționalități ale terry-mao/goim sunt: Kafka-Driven Message Queue Servers, Push Notification Servers, Node Registries, Binary Protocols, Kafka, Kafka Message Queues, Scalable Push Notification Platforms, Asynchronous Queue Deliveries.

Care sunt câteva alternative open-source pentru terry-mao/goim?

Alternativele open-source pentru terry-mao/goim includ: tinode/chat — This project is a self-hosted, cross-platform instant messaging platform featuring a Go backend and a protobuf-based… meetecho/janus-gateway — Janus is a WebRTC media gateway that routes real-time audio, video, and data between web browsers and server-side… centrifugal/centrifugo — Centrifugo is a self-hosted real-time messaging server that provides infrastructure for scalable notifications, a… crossoverjie/cim — Cim is a distributed instant messaging system and server-side backend designed to manage real-time communication… mqttjs/mqtt.js — MQTT.js is a JavaScript client library and asynchronous messaging client used to connect to message brokers and… socketcluster/socketcluster — Highly scalable realtime pub/sub and RPC framework.

Alternative open-source pentru Goim

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu Goim.
  • tinode/chatAvatar tinode

    tinode/chat

    13,371Vezi pe GitHub↗

    This project is a self-hosted, cross-platform instant messaging platform featuring a Go backend and a protobuf-based messaging server. It provides a unified communication suite with native clients for iOS, Android, and web, utilizing gRPC and Protocol Buffers for efficient data exchange. The system is distinguished by an extensible chatbot framework that allows for the integration of automated bots and plugins via standardized service interfaces. It supports high-availability clustering with sharded load distribution and a pluggable database backend to ensure reliability and flexible data per

    Gochatchat-applicationchatapp
    Vezi pe GitHub↗13,371
  • meetecho/janus-gatewayAvatar meetecho

    meetecho/janus-gateway

    9,117Vezi pe GitHub↗

    Janus is a WebRTC media gateway that routes real-time audio, video, and data between web browsers and server-side application logic. It functions as a central media relay that manages session negotiation and encryption for multiple browser endpoints. The project utilizes a modular plugin architecture that decouples the core server from specific media logic, allowing developers to implement custom modules for media processing, event handling, and transport protocols. This design enables the server to act as a protocol translation bridge, converting WebRTC streams into legacy formats such as SI

    C
    Vezi pe GitHub↗9,117
  • centrifugal/centrifugoAvatar centrifugal

    centrifugal/centrifugo

    10,404Vezi pe GitHub↗

    Centrifugo is a self-hosted real-time messaging server that provides infrastructure for scalable notifications, a publish-subscribe message broker, and a language-agnostic WebSocket gateway. It allows for the delivery of instant messages and data streams to concurrent users via WebSockets and Server-Sent Events. The system functions as a communication layer that separates network transport from backend business logic. It supports distributed messaging clusters using Redis for coordination of presence and message delivery across multiple server nodes. The project covers channel subscription m

    Goablyalternativeeventsource
    Vezi pe GitHub↗10,404
  • crossoverjie/cimAvatar crossoverJie

    crossoverJie/cim

    9,492Vezi pe GitHub↗

    Cim is a distributed instant messaging system and server-side backend designed to manage real-time communication across a cluster of servers. It provides a scalable infrastructure for routing private and group messages while tracking user connection states and session locations across distributed nodes. The project features an interception layer for AI messaging middleware, which allows artificial intelligence agents to intercept incoming communication and generate automated responses. It also includes a real-time push infrastructure to deliver notifications and messages from the server to en

    Javaheartbeatimnetty
    Vezi pe GitHub↗9,492
Vezi toate cele 30 alternative pentru Goim→