Desteklenen protokoller
Restorm’da bir protokol, HTTP’nin kısıtlanmış bir türevi değildir: her birinin kendi düzenleyicisi, kendi çalıştırma mantığı ve kendi yanıt gösterimi vardır. Bu sayede aynı proje bir REST çağrısını, bir MQTT aboneliğini ve bir Kafka tüketicisini yan yana barındırabilir.
Çalıştırma protokollerinin tümü Community sürümüne dahildir, herhangi bir sınır olmaksızın.
İstek / yanıt
Section titled “İstek / yanıt”| Protokol | Ne için | Sunucu modu |
|---|---|---|
| HTTP | REST ve her türlü HTTP çağrısı | ✔ |
| GraphQL | Sorgular, mutasyonlar, abonelikler | ✔ |
| gRPC | Tekil ve akış çağrıları, gRPC-Web, Connect | ✔ |
| SOAP | WSDL servisleri, XML zarfları | ✔ |
| OData | Varlık kümeleri, sorgu seçenekleri, $batch | ✔ |
| JSON-RPC | JSON-RPC 2.0, tek tek veya toplu | — |
| tRPC | query ve mutation prosedürleri | — |
Akış ve mesajlaşma
Section titled “Akış ve mesajlaşma”| Protokol | Ne için | Sunucu modu |
|---|---|---|
| WebSocket | Ham çift yönlü bağlantı | ✔ |
| Socket.IO | Adlandırılmış Socket.IO olayları | ✔ |
| MQTT | IoT — konular, QoS, saklama, son vasiyet | ✔ |
| SSE | Server-Sent Events, alım tarafında | — |
| STOMP | WebSocket üzerinden STOMP | — |
| AMQP | RabbitMQ — yayınlama, tüketme, inceleme | — |
| Kafka | Bir bölüme üretme, tüketme, inceleme | — |
| Redis | Pub/Sub ve komutlar | — |
Hepsinde ortak olanlar
Section titled “Hepsinde ortak olanlar”{{variables}}ifadeleri, protokole özgü alanlar dahil olmak üzere her alanda çözümlenir. Bkz. Alanlarda satır içi değişkenler.- Geçmiş, protokolden bağımsız olarak her çalıştırmayı kaydeder. Bkz. İstek geçmişi.
- Kod parçacıkları, her protokol için ilgili dillerde üretilir. Bkz. Kod dışa aktarma.
- Senaryolar, uzun ömürlü bağlantılar dahil (bağlan / gönder / kapat) her protokolü yönetebilir. Bkz. İstekler ve oluşturma.
- Güvenlik duvarı, taşıma katmanı ne olursa olsun giden tüm çağrıları yakalar. Bkz. Güvenlik duvarı.
Desteklenmeyenler
Section titled “Desteklenmeyenler”Sınırlar konusunda net olmak gerekirse: Restorm Thrift’i çalıştırmaz (içe aktarması yalnızca dokümantasyon amaçlıdır), AMQP 1.0’ı da çalıştırmaz (yalnızca AMQP 0-9-1 / RabbitMQ uygulanmıştır) ve NATS’ı da çalıştırmaz.