1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/caoyixiong-caoyx-rpc

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 6.2 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 04.03.2025 11:44 5b1aa0f

Статус сборки лицензия Maven Maven

caoyx-rpc

Caoyx-rpc — это открытый фреймворк RPC-сервиса, реализованный на Java, который обеспечивает высокую доступность и надёжность удалённого вызова.### Основные характеристики:

  1. Прокси-интерфейсы: Вызывающая сторона и предоставляющая сторона взаимодействуют через один интерфейсный JAR-пакет; система скрывает реализацию удалённой связи, позволяя пользователям использовать её так же, как они используют локальные реализации.
  2. Поддержка различных методов вызова: Включает синхронные вызовы, асинхронные вызовы с использованием Future, обратные вызовы Callback и односторонние вызовы OneWay.
  3. Поддержка неявных параметров: Пользователи могут вносить свои данные в контекст CaoyxRpcContext, который будет передан вместе с вызовом на сторону предоставления услуги.
  4. Поддержка генерализованного вызова: Вызывающая сторона может вызывать сервисы стороны предоставления без зависимости от интерфейсного JAR-пакета.
  5. Балансировка нагрузки: Предоставляет множество стратегий балансировки нагрузки, включая случайную выборку и консистентную хеш-функцию.
  6. Регистрация и обнаружение услуг: Поддерживает автоматическую регистрацию и ручную регистрацию услуг. - Автоматическая регистрация: Поддерживается Zookeeper. - Ручная регистрация: Пользователи могут указать конкретные адреса и порты для каждого сервиса-поставщика.
  7. Высокие возможности расширения: Расширяется через пользовательское SPI. 8.Поддержка нескольких версий: сервер-поставщик может предоставлять несколько реализаций одного интерфейса, а вычислительная сторона выбирает нужную версию.
  8. Различные способы сериализации: поддерживает сериализацию JDK, Hessian2 и ProtoStuff.
  9. Поддержка пользовательских фильтров: позволяет пользователям создавать и внедрять свои фильтры в цепочку вызовов.
  10. Интеграция с Spring Boot.
  11. Установка времени ожидания и количества попыток повторной отправки.
  12. Обращение к версии службы и её реализациям: поставщики услуг могут устанавливать версии своих служб и их реализации, а вычислители могут обращаться к этим версиям.
  13. Обратные вызовы при ошибке и истечении времени ожидания.
  14. Поддержка сжатия LZ4.
  15. Аутентификация между вычислителями и поставщиками услуг: поставщики услуг могут настраивать accessToken, чтобы принимать только запросы с таким же accessToken.
  16. Поддержка элегантного завершения работы процесса kill pid (не kill -9).
  17. Лимитирование частоты запросов и обратные вызовы при превышении этого лимита.

Как подключиться

1. Подключение с помощью Spring BootПример использования Caoyx-Rpc в проекте Spring Boot

2. Прямое подключение

Пример простого использования Caoyx-Rpc

Бенчмарки

Сравнение производительности CaoyxRpc, Dubbo, Grpc и Thrift

Как связаться

Вклад

Приглашаем вас принять участие в развитии проекта! Например, вы можете отправить pull request для исправления ошибки или создать issue для обсуждения новых возможностей или изменений.

Лицензия

Проект caoyx-rpc распространяется под лицензией Apache 2.0. Подробнее см. файл LICENSE.

Программа является открытым исходным кодом и доступна бесплатно. Также мы предоставляем бесплатную техническую поддержку сообществу.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/caoyixiong-caoyx-rpc.git
git@api.gitlife.ru:oschina-mirror/caoyixiong-caoyx-rpc.git
oschina-mirror
caoyixiong-caoyx-rpc
caoyixiong-caoyx-rpc
master