All Projects → zeroc-ice → Ice

zeroc-ice / Ice

Licence: other
Comprehensive RPC framework with support for C++, C#, Java, JavaScript, Python and more.

Projects that are alternatives of or similar to Ice

Armeria
Your go-to microservice framework for any situation, from the creator of Netty et al. You can build any type of microservice leveraging your favorite technologies, including gRPC, Thrift, Kotlin, Retrofit, Reactive Streams, Spring Boot and Dropwizard.
Stars: ✭ 3,392 (+91.42%)
Mutual labels:  rpc, rpc-framework, hacktoberfest
Rsf
已作为 Hasor 的子项目,迁移到:http://git.oschina.net/zycgit/hasor
Stars: ✭ 77 (-95.65%)
Mutual labels:  rpc, rpc-framework
Rpcx Java
rpcx implementation in Java for server side and client side
Stars: ✭ 71 (-95.99%)
Mutual labels:  rpc, rpc-framework
Rpc.py
A fast and powerful RPC framework based on ASGI/WSGI.
Stars: ✭ 98 (-94.47%)
Mutual labels:  rpc, rpc-framework
Go Zero
go-zero is a web and rpc framework written in Go. It's born to ensure the stability of the busy sites with resilient design. Builtin goctl greatly improves the development productivity.
Stars: ✭ 13,156 (+642.44%)
Mutual labels:  rpc, rpc-framework
Spyne
A transport agnostic sync/async RPC library that focuses on exposing services with a well-defined API using popular protocols.
Stars: ✭ 992 (-44.02%)
Mutual labels:  rpc, rpc-framework
Gotree
Gotree is a vertically distributed framework. Gotree's goal is to easily develop distributed services and liberate the mental burden of developers.
Stars: ✭ 91 (-94.86%)
Mutual labels:  rpc, rpc-framework
Sofa Rpc Node
SOFARPC Node is a high-performance, high-extensibility, production-level Nodejs RPC framework.
Stars: ✭ 520 (-70.65%)
Mutual labels:  rpc, rpc-framework
Jupiter
Jupiter是一款性能非常不错的, 轻量级的分布式服务框架
Stars: ✭ 1,372 (-22.57%)
Mutual labels:  rpc, rpc-framework
Whatsmars
Java生态研究(Spring Boot + Redis + Dubbo + RocketMQ + Elasticsearch)🔥🔥🔥🔥🔥
Stars: ✭ 1,389 (-21.61%)
Mutual labels:  rpc, rpc-framework
Jrpc
JSON-RPC implementation in C++17
Stars: ✭ 113 (-93.62%)
Mutual labels:  rpc, rpc-framework
Grain
grain是一个极简的、组件式的RPC框架,灵活且适合渐进学习,可与任何框架整合。同时包含(系统通用多线程模型与消息通讯 || 多对多关系的分布式锁 || 基于Servlet的HTTP框架 || 基于系统通用多线程模型的Websocket框架 || 支持行级锁的多线程锁 )等组件,按需选择组件,不绑架开发者。
Stars: ✭ 577 (-67.44%)
Mutual labels:  rpc, rpc-framework
Hprose Java
Hprose is a cross-language RPC. This project is Hprose 2.0 for Java
Stars: ✭ 542 (-69.41%)
Mutual labels:  rpc, rpc-framework
Hprose Golang
Hprose is a cross-language RPC. This project is Hprose for Golang.
Stars: ✭ 1,143 (-35.5%)
Mutual labels:  rpc, rpc-framework
Getty
a netty like asynchronous network I/O library based on tcp/udp/websocket; a bidirectional RPC framework based on JSON/Protobuf; a microservice framework based on zookeeper/etcd
Stars: ✭ 532 (-69.98%)
Mutual labels:  rpc, rpc-framework
Easyrpc
EasyRpc is a simple, high-performance, easy-to-use RPC framework based on Netty, ZooKeeper and ProtoStuff.
Stars: ✭ 79 (-95.54%)
Mutual labels:  rpc, rpc-framework
Sea
rpc framework built on grpc
Stars: ✭ 132 (-92.55%)
Mutual labels:  rpc-framework, hacktoberfest
Udash Core
Scala framework for building beautiful and maintainable web applications.
Stars: ✭ 405 (-77.14%)
Mutual labels:  rpc, hacktoberfest
Simple Go Rpc
RPC explained by writing simple RPC framework in 300 lines of pure Golang.
Stars: ✭ 510 (-71.22%)
Mutual labels:  rpc, rpc-framework
Hprose Delphi
Hprose is a cross-language RPC. This project is Hprose 2.0 for Delphi and FreePascal
Stars: ✭ 100 (-94.36%)
Mutual labels:  rpc, rpc-framework

Join the chat at https://gitter.im/zeroc-ice/ice

Ice - Comprehensive RPC Framework

Ice helps you network your software with minimal effort. By taking care of all interactions with low-level network programming interfaces, Ice allows you to focus your efforts on your application logic. When using Ice, there is no need to worry about details such as opening network connections, serializing and deserializing data for network transmission, or retrying failed connection attempts (to name just a few of dozens of such low-level details).

You can download Ice releases from ZeroC's website. Use this GitHub repository to build from source; see branches for more information.

Languages

Ice supports the following programming languages:

  • C#
  • C++
  • Java
  • JavaScript
  • MATLAB
  • Objective-C
  • PHP
  • Python
  • Ruby
  • Swift
  • TypeScript

Platforms

Ice runs on a wide range of platforms:

  • Android
  • iOS
  • Linux
  • Linux on embedded devices
  • macOS
  • Node.js
  • Unix systems such as AIX
  • Web Browser
  • Windows

Features

  • Efficient, high-performance binary protocol
  • Supports a wide range of programming languages and platforms
  • Easy to use and type-safe API, with your own interfaces and types defined in a programming language neutral IDL, Slice
  • Supports secure, encrypted communications by taking advantage of your platform's native SSL/TLS stack
  • Familiar object-oriented programming model, with the ability to transmit proxies (references to remote objects) to remote applications
  • Supports synchronous and asynchronous calls, for both client-side invocations and server-side dispatches
  • Automatic discovery of remote objects through UDP multicast
  • Comes with a number of optional services:
    • IceGrid - a DNS-like service for Ice objects, with support for server deployment, replication, monitoring, load-balancing and more
    • IceStorm - a lightweight topic-based pub-sub service
    • Glacier2 - a sysadmin-friendly solution for routing Ice communications through firewalls

Branches

  • master Primary development branch (unstable, frequently updated)

  • 3.7 Ice 3.7.x plus various patches (stable, frequently updated)

  • 3.6 Ice 3.6.x plus various patches (stable)

  • 3.5 Ice 3.5.1 plus various patches (stable)

  • 3.4 Ice 3.4.2 plus various patches (stable)

Copyright and License

Ice is a single-copyright project: all the source code in this ice repository is Copyright © ZeroC, Inc., with very few exceptions.

As copyright owner, ZeroC can license Ice under different license terms, and offers the following licenses for Ice:

  • GPL v2, a popular open-source license with strong copyleft conditions (the default license)
  • Commercial or closed-source licenses

If you license Ice under GPL v2, there is no license fee or signed license agreement: you just need to comply with the GPL v2 terms and conditions. See ICE_LICENSE and LICENSE for further information.

If you purchase a commercial or closed-source license for Ice, you must comply with the terms and conditions listed in the associated license agreement; the GPL v2 terms and conditions do not apply.

The Ice software itself remains the same: the only difference between an open-source Ice and a commercial Ice are the license terms.

Documentation

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].