Apache Dubbo est un framework Web et RPC facile à utiliser qui fournit différentes implémentations linguistiques (Java, Go, Rust, Node.js, JavaScript) pour la communication, la découverte de services, la gestion du trafic, l'observabilité, la sécurité, les outils et les meilleures pratiques pour construire des microservices prêts à l'entreprise.
Dubbo-js est l'implémentation de typeScript du protocole Triple Dubbo (un protocole compatible entièrement compatible et HTTP), qui peut être utilisé pour Node.js et le développement d'applications Web. Avec Dubbo-JS, vous pouvez facilement créer des applications travaillant sur le navigateur et le frontend qui peuvent communiquer avec les services backend via le protocole basé sur HTTP.

Les deux démos suivantes vous guideront sur la façon de créer des applications Backend et Web Node.js à l'aide de Dubbo-Js.
Vous pouvez appeler Backend Dubbo Services avec des API de type type:
const resp = await client . say ( { sentence : "Hello, Dubbo." } ) ;
console . log ( resp ) ;Ou, vous pouvez les boucler si vous voulez:
curl
--header ' Content-Type: application/json '
--data ' {"sentence": "Hello World"} '
http://localhost:8080/apache.dubbo.demo.example.v1.ExampleService/SaySuivez ce guide pour apprendre à développer des applications Web qui peuvent accéder aux services Dubbo backend et en cours d'exécution sur le navigateur.
Nous prenons en charge tous les navigateurs Web modernes qui implémentent l'API Fetch largement disponible et l'API Encoding.
Suivez ce guide ici pour apprendre à développer et à tourner un service Dubbo backend dans Node.js, et appelez-le à partir de Curl, du navigateur Web ou d'un client Dubbo dans votre terminal.
De plus, Dubbo intègre Middlewares tels que Express, Fastify et Next, ce qui permet aux utilisateurs de créer plus facilement un cadre de service distribué Dubbo à l'aide de Node.js.
Outre le protocole RPC, nous prévoyons de fournir des fonctionnalités de gouvernance de services riches en JS de Dubbo afin qu'il puisse fonctionner de manière transparente avec d'autres architectures de microservice.
Les fonctionnalités énumérées ci-dessous sont toujours en cours de développement, nous mettrons à jour l'état de chaque fonctionnalité une fois prêt.
Nacos, Zookeeper, Kubernetes, etc.
Randrobin, Roundrobin, le moins actif, cohérenthash, etc.
? Routage du trafic : fractionnement du trafic, rupture de circuits, libération canari, etc.
? Filtre : jeton, accesslog, limitation des taux, etc.
? Métriques : Prometheus
? Traçage : Jaeger, Zipkin
Veuillez vérifier la contribution de la façon de contribuer à ce projet.
Recherchez le numéro de groupe Dingding et rejoignez-nous: 27690019068
Ce projet est basé sur BufBuild / Connect-ES, un projet open-source publié sous la licence Apache V2. En comparaison avec Connect-ES, Dubbo-JS a supprimé le protocole GRPC-Web et Connect inutilisé, une prise en charge ajoutée pour le protocole Dubbo, l'API de programmation sans IDL et de nombreuses fonctionnalités de gouvernance de service.
Nous avons une annonce dans notre fichier de licence et conservons tous les en-têtes de licence de fichiers de Connect-ES inchangés.