Rust - std::ANY alebo lepší návrh?

Idris

  • *****
  • 2 286
    • Zobrazit profil
    • E-mail
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #60 kdy: 28. 11. 2021, 12:05:09 »
Jako dobrý, ale pořád mi přijde jednodušší sestavit SOAP klienta v těžce zastaralých systémech, než tam průkopnicky sestavovat gRPC klienta.
Pak je ale vůbec nesmysl “průkopnicky” nasazovat Rust :)


Rike

Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #61 kdy: 28. 11. 2021, 12:40:29 »
Pak je ale vůbec nesmysl “průkopnicky” nasazovat Rust :)
No jo, chtěl jsem se sobecky naučit něco nového a nakonec jsem spadl do vlastní díry  :)

Ink

  • *****
  • 654
    • Zobrazit profil
    • E-mail
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #62 kdy: 28. 11. 2021, 14:15:14 »
Pak je ale vůbec nesmysl “průkopnicky” nasazovat Rust :)
No jo, chtěl jsem se sobecky naučit něco nového a nakonec jsem spadl do vlastní díry  :)

Sobče, vzdělávat ses chtěl!

Idris

  • *****
  • 2 286
    • Zobrazit profil
    • E-mail
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #63 kdy: 28. 11. 2021, 14:15:33 »
Pak je ale vůbec nesmysl “průkopnicky” nasazovat Rust :)
No jo, chtěl jsem se sobecky naučit něco nového a nakonec jsem spadl do vlastní díry  :)
Tak zrovna Rust má smysl se učit, i když ho nakonec člověk nepoužije. Ale nedá se čekat podpora obskurních obstarožních technologií. Já zrovna kdysi Rust na Windows použil, ale rozhraní bylo v C++/CLI (byla to komponenta pro .NET, ne COM). Rust umí vytvářet statické knihovny a dobře si rozumí s MSVC. Ale napsat to celé v Rustu, to není úplně schůdné.

Idris

  • *****
  • 2 286
    • Zobrazit profil
    • E-mail
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #64 kdy: 28. 11. 2021, 14:16:59 »
Pak je ale vůbec nesmysl “průkopnicky” nasazovat Rust :)
No jo, chtěl jsem se sobecky naučit něco nového a nakonec jsem spadl do vlastní díry  :)
Sobče, vzdělávat ses chtěl!
Hehe, furt lepší než různí javamani, co místo sebevzdělávání nadávají všem vzdělaným a úspěšným :)


BoneFlute

  • *****
  • 1 981
    • Zobrazit profil
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #65 kdy: 29. 11. 2021, 01:25:30 »
SOAP je peklo a patří na smetiště IT dějin.
Proč?
To je vážně míněná otázka? Odpovědí jsou všechny důvody, proč vzniklo například gRPC.

Jo, je to vážně míněná otázka.

Se SOAP jsem dělal (Java, C#, PHP). Netvrdím, že je to nějaká slává, prostě jsem to vzal v potaz a používal (když to klienti chtěli...).

RPC jsem používal dřív, různé implementace v Pythonu (patnáct let zpět). A mám za to, že je to krapet něco jiného než SOAP, ale nechám se poučit.

Aktuálně frčí REST, ale přijde mi to jako trochu jinak řešený stejný problém, akorát že tam zatím není standardizovaný nějaký popis rozhraní jako WSDL. Třeba časem.

gRPC neznám, díky za tip.

Ptal jsem se proto, že občas slyším někoho nadávat na SOAP, ale většinou to jsou jen tak obecné nářky. A mě známé nevýhody, že je to ukecané a že je to v XML mi přijde trochu málo na takové zhodnocení. Hoď sem něco z patra prosím.

Idris

  • *****
  • 2 286
    • Zobrazit profil
    • E-mail
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #66 kdy: 29. 11. 2021, 03:03:32 »
SOAP je peklo a patří na smetiště IT dějin.
Proč?
To je vážně míněná otázka? Odpovědí jsou všechny důvody, proč vzniklo například gRPC.
Aktuálně frčí REST, ale přijde mi to jako trochu jinak řešený stejný problém, akorát že tam zatím není standardizovaný nějaký popis rozhraní jako WSDL. Třeba časem.

gRPC neznám, díky za tip.
Je to celé o efektivitě, REST je poměrně pomalý a parsovat XML je taky zbytečně zdlouhavé. Proto vymysleli Protobuf, což je extrémně úsporný protokol, a gRPC nad ním jede přes HTTP/2, takže bez zbytečných latencí. Žádná věda v tom není, ostatně pokud člověk neřeší miliony RPC volání za hodinu, tak ho asi použití JSONu nebo XML pálit nebude. Jen prostě parsování sežere dost CPU cyklů a paměti.

Ink

  • *****
  • 654
    • Zobrazit profil
    • E-mail
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #67 kdy: 29. 11. 2021, 08:16:47 »
Aktuálně frčí REST, ale přijde mi to jako trochu jinak řešený stejný problém, akorát že tam zatím není standardizovaný nějaký popis rozhraní jako WSDL. Třeba časem.

OAS nestačí? https://en.wikipedia.org/wiki/OpenAPI_Specification

Idris

  • *****
  • 2 286
    • Zobrazit profil
    • E-mail
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #68 kdy: 29. 11. 2021, 10:38:11 »
Aktuálně frčí REST, ale přijde mi to jako trochu jinak řešený stejný problém, akorát že tam zatím není standardizovaný nějaký popis rozhraní jako WSDL. Třeba časem.

OAS nestačí? https://en.wikipedia.org/wiki/OpenAPI_Specification
OpenAPI (aka Swagger) je jeden z mála standardů, co se v poslední povedl.

@BoneFlute Jestli to neznáš, doporučuju aspoň mrknout.

BoneFlute

  • *****
  • 1 981
    • Zobrazit profil
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #69 kdy: 29. 11. 2021, 23:45:19 »
SOAP je peklo a patří na smetiště IT dějin.
Proč?
To je vážně míněná otázka? Odpovědí jsou všechny důvody, proč vzniklo například gRPC.
Aktuálně frčí REST, ale přijde mi to jako trochu jinak řešený stejný problém, akorát že tam zatím není standardizovaný nějaký popis rozhraní jako WSDL. Třeba časem.

gRPC neznám, díky za tip.
Je to celé o efektivitě, REST je poměrně pomalý a parsovat XML je taky zbytečně zdlouhavé. Proto vymysleli Protobuf, což je extrémně úsporný protokol, a gRPC nad ním jede přes HTTP/2, takže bez zbytečných latencí. Žádná věda v tom není, ostatně pokud člověk neřeší miliony RPC volání za hodinu, tak ho asi použití JSONu nebo XML pálit nebude. Jen prostě parsování sežere dost CPU cyklů a paměti.

Takže to
Citace
je peklo a patří na smetiště IT dějin
je čistě proto, že SOAP je neefektivní? Nebo je mu vyčítáno i něco jiného?

Aktuálně frčí REST, ale přijde mi to jako trochu jinak řešený stejný problém, akorát že tam zatím není standardizovaný nějaký popis rozhraní jako WSDL. Třeba časem.

OAS nestačí? https://en.wikipedia.org/wiki/OpenAPI_Specification
OpenAPI (aka Swagger) je jeden z mála standardů, co se v poslední povedl.

Už jsem o něj zavadil, ale ještě jsem si na něj neudělal závěr. Takže díky za referenci.

Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #70 kdy: 30. 11. 2021, 01:18:55 »
Aktuálně frčí REST, ale přijde mi to jako trochu jinak řešený stejný problém, akorát že tam zatím není standardizovaný nějaký popis rozhraní jako WSDL. Třeba časem.

co je OpenAPI?

Ink

  • *****
  • 654
    • Zobrazit profil
    • E-mail
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #71 kdy: 30. 11. 2021, 07:08:12 »
Takže to
Citace
je peklo a patří na smetiště IT dějin
je čistě proto, že SOAP je neefektivní? Nebo je mu vyčítáno i něco jiného?

Je to řešení ze světa Javy a velkých korporací. Design by committee, překomplikovaný, se spoustou rozšíření a ukrutně náročný, když to chceš znovu naimplementovat, ať už v jiném programovacím jazyce (jak jsme si tu koneckonců demonstrovali) nebo protože Ti stávající řešení třetích stran z nějakého důvodu nevyhovuje. Chceš poslat zprávu o tom, že Pepa Novák si kupuje ponožky za 10 dolarů a vychrstne to 5 KB XML s třemi namespacy a čtyřmi vrstvami obálek. Přitom Ty chceš jenom napsat jméno, příjmení, pár údajů o kartě a částku a nazpátek by Ti stačil číselný kód, který říká, jak to dopadlo a jeden řetězec s případným lidským popisem situace.

Krátce a výstižně, simplicity and utility trump large corporate backing: http://keithba.net/simplicity-and-utility-or-why-soap-lost

Idris

  • *****
  • 2 286
    • Zobrazit profil
    • E-mail
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #72 kdy: 30. 11. 2021, 10:46:33 »
Takže to
Citace
je peklo a patří na smetiště IT dějin
je čistě proto, že SOAP je neefektivní? Nebo je mu vyčítáno i něco jiného?
překomplikovaný, se spoustou rozšíření a ukrutně náročný, když to chceš znovu naimplementovat
Přesně. Už jen samo použití XML nedává v dnešní době smysl a ty "obálky" kolem, to už je úplná magořina (z dnešního pohledu tvorby API a RPC).

BoneFlute

  • *****
  • 1 981
    • Zobrazit profil
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #73 kdy: 30. 11. 2021, 10:55:19 »
Aniž bych ostatní text ignoroval, tak:
Chceš poslat zprávu o tom, že Pepa Novák si kupuje ponožky za 10 dolarů
Mě na SOAP oslovilo právě a hlavně to WSDL. Nalinkuju jedno url, a hned mám kompletní knihovnu včetně dokumentace (fandím), typů, etc. A s žádným XML se vůbec nemusím dostat do styku (já vím, v reálu to tak nefungovalo) a nemusí mě zajímat.

To mě třeba na tom RESTu přišlo blbé. Že to sice je štíhlejší, a můžeš si to naimplementovat pár řádky kódu, ale problém je v tom, že vlastně musíš. Nejsou (nebyli) nástroje, které by udělali automaticky knihovnu a mohl jsi ty endpointy volat transparentně.

(Argument s OpenAPI prosím nechte. Pochopil jsem. Nastuduji si.)

Idris

  • *****
  • 2 286
    • Zobrazit profil
    • E-mail
Re:Rust - std::ANY alebo lepší návrh?
« Odpověď #74 kdy: 30. 11. 2021, 11:25:44 »
Aniž bych ostatní text ignoroval, tak:
Chceš poslat zprávu o tom, že Pepa Novák si kupuje ponožky za 10 dolarů
Mě na SOAP oslovilo právě a hlavně to WSDL. Nalinkuju jedno url, a hned mám kompletní knihovnu včetně dokumentace (fandím), typů, etc. A s žádným XML se vůbec nemusím dostat do styku (já vím, v reálu to tak nefungovalo) a nemusí mě zajímat.

To mě třeba na tom RESTu přišlo blbé. Že to sice je štíhlejší, a můžeš si to naimplementovat pár řádky kódu, ale problém je v tom, že vlastně musíš. Nejsou (nebyli) nástroje, které by udělali automaticky knihovnu a mohl jsi ty endpointy volat transparentně.

(Argument s OpenAPI prosím nechte. Pochopil jsem. Nastuduji si.)
Teď už se generuje okolo API všechno, SOAP, Protobuf, OpenAPI... (člověk tak získá nezávislost na konkrétním jazyce, to je plus).