Developing high-performance network servers in LispVladimir Sedach
Overview of current high-performance Common Lisp web servers and implementation techniques, and description of a new hybrid approach to asynchronous I/O based on separate racing accept() and epoll() thread pools.
Developing high-performance network servers in LispVladimir Sedach
Overview of current high-performance Common Lisp web servers and implementation techniques, and description of a new hybrid approach to asynchronous I/O based on separate racing accept() and epoll() thread pools.
This is a presentation for International Lisp Conference 2012 which was held in Kyoto, Japan.
Clack is a web application environment for Common Lisp to make your web applications be portable and reusable by abstracting HTTP into a simple API.
In this paper, I describe what are problems in web development and how Clack solves them.
How to develop the Standard Libraries of Ruby?Hiroshi SHIBATA
I maintain the RubyGems, Bundler and the standard libraries of the Ruby language. So, I've been extract many of the standard libraries to default gems and GitHub at Ruby 3.0. But the some of libraries still remains in only Ruby repository. I will describe these situation.
Slides to talk presented on #ngpartycz about the history of APIs, evolution and how to pick the right technology for you. It might not be (and probably will not be) the technically best solution. And of course you will find out why is GraphQL actually REST.
Building high performance microservices in finance with Apache ThriftRX-M Enterprises LLC
Apache Roadshow Chicago Talk on May 14, 2019
In this talk we’ll look at the ways Apache Thrift can solve performance problems commonly facing next generation applications deployed in performance sensitive capital markets and banking environments. The talk will include practical examples illustrating the construction, performance and resource utilization benefits of Apache Thrift. Apache Thrift is a high-performance cross platform RPC and serialization framework designed to make it possible for organizations to specify interfaces and application wide data structures suitable for serialization and transport over a wide variety of schemes. Due to the unparalleled set of languages supported by Apache Thrift, these interfaces and structs have similar interoperability to REST type services with an order of magnitude improvement in performance. Apache Thrift services are also a perfect fit for container technology, using considerably fewer resources than traditional application server style deployments. Decomposing applications into microservices, packaging them into containers and orchestrating them on systems like Kubernetes can bring great value to an organization; however, it can also take a very fast monolithic application and turn it into a high latency web of slow, resource hungry services. Apache Thrift is a perfect solution to the performance and resource ills of many microservice based endeavors.
This is a presentation for International Lisp Conference 2012 which was held in Kyoto, Japan.
Clack is a web application environment for Common Lisp to make your web applications be portable and reusable by abstracting HTTP into a simple API.
In this paper, I describe what are problems in web development and how Clack solves them.
How to develop the Standard Libraries of Ruby?Hiroshi SHIBATA
I maintain the RubyGems, Bundler and the standard libraries of the Ruby language. So, I've been extract many of the standard libraries to default gems and GitHub at Ruby 3.0. But the some of libraries still remains in only Ruby repository. I will describe these situation.
Slides to talk presented on #ngpartycz about the history of APIs, evolution and how to pick the right technology for you. It might not be (and probably will not be) the technically best solution. And of course you will find out why is GraphQL actually REST.
Building high performance microservices in finance with Apache ThriftRX-M Enterprises LLC
Apache Roadshow Chicago Talk on May 14, 2019
In this talk we’ll look at the ways Apache Thrift can solve performance problems commonly facing next generation applications deployed in performance sensitive capital markets and banking environments. The talk will include practical examples illustrating the construction, performance and resource utilization benefits of Apache Thrift. Apache Thrift is a high-performance cross platform RPC and serialization framework designed to make it possible for organizations to specify interfaces and application wide data structures suitable for serialization and transport over a wide variety of schemes. Due to the unparalleled set of languages supported by Apache Thrift, these interfaces and structs have similar interoperability to REST type services with an order of magnitude improvement in performance. Apache Thrift services are also a perfect fit for container technology, using considerably fewer resources than traditional application server style deployments. Decomposing applications into microservices, packaging them into containers and orchestrating them on systems like Kubernetes can bring great value to an organization; however, it can also take a very fast monolithic application and turn it into a high latency web of slow, resource hungry services. Apache Thrift is a perfect solution to the performance and resource ills of many microservice based endeavors.
LCU14 310- Cisco ODP
---------------------------------------------------
Speaker: Robbie King
Date: September 17, 2014
---------------------------------------------------
★ Session Summary ★
Cisco to present their experience using ODP to provide portable accelerated access to crypto functions on various SoCs.
---------------------------------------------------
★ Resources ★
Zerista: http://lcu14.zerista.com/event/member/137757
Google Event: https://plus.google.com/u/0/events/ckmld1hll5jjijq11frbqmptet8
Video: https://www.youtube.com/watch?v=eFlTmslVK-Y&list=UUIVqQKxCyQLJS6xvSmfndLA
Etherpad: http://pad.linaro.org/p/lcu14-310
---------------------------------------------------
★ Event Details ★
Linaro Connect USA - #LCU14
September 15-19th, 2014
Hyatt Regency San Francisco Airport
---------------------------------------------------
http://www.linaro.org
http://connect.linaro.org
Directories for the REST of Us: REST to LDAP in OpenDJ 2.6ForgeRock
A Hands-On Workshop session with OpenDJ Product Manager Ludovic Poitou, and OpenDJ Architect Matt Swift.
Learn more about ForgeRock Access Management:
https://www.forgerock.com/platform/access-management/
Learn more about ForgeRock Identity Management:
https://www.forgerock.com/platform/identity-management/
Devoxx UK, May, 2022, Mario-Leander Reimer (@LeanderReimer, Principal Software Architect bei QAware).
== Dokument bitte herunterladen, falls unscharf! Please download slides if blurred! ==
This talk focused on modern and efficient Inter Process Communication (IPC) for microservices. We start with a REST API, built using JAX-RS and Quarkus to briefly discuss the pros and cons of this approach. We extended the API with an efficient Protobuf payload representation in order to finally transform the API into a fully fledged high-performance gRPC interface definition. But that’s not all! To put some extra icing on the cake, this talk demonstrated how to consume the gRPC service from a JavaScript web client and also how to completely generate a matching REST API from an enhanced gRPC interface definition to ensure full interoperability in a microservice architecture.
The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...Josef Adersberger
Running applications on Kubernetes can provide a lot of benefits: more dev speed, lower ops costs, and a higher elasticity & resiliency in production. Kubernetes is the place to be for cloud native apps. But what to do if you’ve no shiny new cloud native apps but a whole bunch of JEE legacy systems? No chance to leverage the advantages of Kubernetes? Yes you can!
We’re facing the challenge of migrating hundreds of JEE legacy applications of a major German insurance company onto a Kubernetes cluster within one year. We're now close to the finish line and it worked pretty well so far.
The talk will be about the lessons we've learned - the best practices and pitfalls we've discovered along our way. We'll provide our answers to life, the universe and a cloud native journey like:
- What technical constraints of Kubernetes can be obstacles for applications and how to tackle these?
- How to architect a landscape of hundreds of containerized applications with their surrounding infrastructure like DBs MQs and IAM and heavy requirements on security?
- How to industrialize and govern the migration process?
- How to leverage the possibilities of a cloud native platform like Kubernetes without challenging the tight timeline?
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...QAware GmbH
CloudNativeCon North America 2017, Austin (Texas, USA): Talk by Josef Adersberger (@adersberger, CTO at QAware)
Abstract:
Running applications on Kubernetes can provide a lot of benefits: more dev speed, lower ops costs, and a higher elasticity & resiliency in production. Kubernetes is the place to be for cloud native apps. But what to do if you’ve no shiny new cloud native apps but a whole bunch of JEE legacy systems? No chance to leverage the advantages of Kubernetes? Yes you can!
We’re facing the challenge of migrating hundreds of JEE legacy applications of a major German insurance company onto a Kubernetes cluster within one year. We're now close to the finish line and it worked pretty well so far.
The talk will be about the lessons we've learned - the best practices and pitfalls we've discovered along our way. We'll provide our answers to life, the universe and a cloud native journey like:
- What technical constraints of Kubernetes can be obstacles for applications and how to tackle these?
- How to architect a landscape of hundreds of containerized applications with their surrounding infrastructure like DBs MQs and IAM and heavy requirements on security?
- How to industrialize and govern the migration process?
- How to leverage the possibilities of a cloud native platform like Kubernetes without challenging the tight timeline?
What is Software Development by Thesys Tech Head of DevelopmentProduct School
From this presentation you will learn how the modern software development life-cycle works and the differences between different data stores from a non-technical perspective.
WebRTC Standards & Implementation Q&A - The Internals of WebRTC Browsers Impl...Amir Zmora
A lot has been written about the lack of interoperability between browsers when it comes to WebRTC. Why is it so complicated? What's keeping Google from moving the standard way from SDP Plan B to Unified Plan?
All about the C++ internals of WebRTC in browsers by guest speaker Alex Gouaillard.
Object RTC (ORTC) is a free, open project that enables mobile endpoints to talk to servers and web browsers with Real-Time Communications (RTC) capabilities via native and simple Javascript APIs. The Object RTC components are being optimized to best serve this purpose.
Our mission: To enable rich, high quality, RTC applications to be developed in mobile endpoints and servers via native toolkits, simple Javascript APIs and HTML5. It is also a mandate that Object RTC be compatible with WebRTC.
The Object RTC initiative is a project supported by Hookflash, Microsoft, Google and others. This page is maintained by the Hookflash team.
The ORTC C++ Library is a project sponsored by Hookflash. To sponsor ORTC Lib projects send an email to sponsor@ortc.org
Papers We Love / Kyiv : PAXOS (and little about other consensuses )Ruslan Shevchenko
Slides from talk on 'Papers we Love, Kyiv' meetup: 27.07.2018 -- description of Paxos algorithm and friends.
https://www.meetup.com/Papers-We-Love-Kyiv/events/252974063/
Slides from talk on fwdays-java:http://frameworksdays.com/event/java-frameworks-day-2015
// supplementary source code is available from https://github.com/rssh/scala-training-materials/tree/master/fwdays2015-examples/prv
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Anthony Dahanne
Les Buildpacks existent depuis plus de 10 ans ! D’abord, ils étaient utilisés pour détecter et construire une application avant de la déployer sur certains PaaS. Ensuite, nous avons pu créer des images Docker (OCI) avec leur dernière génération, les Cloud Native Buildpacks (CNCF en incubation). Sont-ils une bonne alternative au Dockerfile ? Que sont les buildpacks Paketo ? Quelles communautés les soutiennent et comment ?
Venez le découvrir lors de cette session ignite
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...informapgpstrackings
Keep tabs on your field staff effortlessly with Informap Technology Centre LLC. Real-time tracking, task assignment, and smart features for efficient management. Request a live demo today!
For more details, visit us : https://informapuae.com/field-staff-tracking/
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
Cyaniclab : Software Development Agency Portfolio.pdfCyanic lab
CyanicLab, an offshore custom software development company based in Sweden,India, Finland, is your go-to partner for startup development and innovative web design solutions. Our expert team specializes in crafting cutting-edge software tailored to meet the unique needs of startups and established enterprises alike. From conceptualization to execution, we offer comprehensive services including web and mobile app development, UI/UX design, and ongoing software maintenance. Ready to elevate your business? Contact CyanicLab today and let us propel your vision to success with our top-notch IT solutions.
How to Position Your Globus Data Portal for Success Ten Good PracticesGlobus
Science gateways allow science and engineering communities to access shared data, software, computing services, and instruments. Science gateways have gained a lot of traction in the last twenty years, as evidenced by projects such as the Science Gateways Community Institute (SGCI) and the Center of Excellence on Science Gateways (SGX3) in the US, The Australian Research Data Commons (ARDC) and its platforms in Australia, and the projects around Virtual Research Environments in Europe. A few mature frameworks have evolved with their different strengths and foci and have been taken up by a larger community such as the Globus Data Portal, Hubzero, Tapis, and Galaxy. However, even when gateways are built on successful frameworks, they continue to face the challenges of ongoing maintenance costs and how to meet the ever-expanding needs of the community they serve with enhanced features. It is not uncommon that gateways with compelling use cases are nonetheless unable to get past the prototype phase and become a full production service, or if they do, they don't survive more than a couple of years. While there is no guaranteed pathway to success, it seems likely that for any gateway there is a need for a strong community and/or solid funding streams to create and sustain its success. With over twenty years of examples to draw from, this presentation goes into detail for ten factors common to successful and enduring gateways that effectively serve as best practices for any new or developing gateway.
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus
As part of the DOE Integrated Research Infrastructure (IRI) program, NERSC at Lawrence Berkeley National Lab and ALCF at Argonne National Lab are working closely with General Atomics on accelerating the computing requirements of the DIII-D experiment. As part of the work the team is investigating ways to speedup the time to solution for many different parts of the DIII-D workflow including how they run jobs on HPC systems. One of these routes is looking at Globus Compute as a way to replace the current method for managing tasks and we describe a brief proof of concept showing how Globus Compute could help to schedule jobs and be a tool to connect compute at different facilities.
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteGoogle
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-pilot-review/
AI Pilot Review: Key Features
✅Deploy AI expert bots in Any Niche With Just A Click
✅With one keyword, generate complete funnels, websites, landing pages, and more.
✅More than 85 AI features are included in the AI pilot.
✅No setup or configuration; use your voice (like Siri) to do whatever you want.
✅You Can Use AI Pilot To Create your version of AI Pilot And Charge People For It…
✅ZERO Manual Work With AI Pilot. Never write, Design, Or Code Again.
✅ZERO Limits On Features Or Usages
✅Use Our AI-powered Traffic To Get Hundreds Of Customers
✅No Complicated Setup: Get Up And Running In 2 Minutes
✅99.99% Up-Time Guaranteed
✅30 Days Money-Back Guarantee
✅ZERO Upfront Cost
See My Other Reviews Article:
(1) TubeTrivia AI Review: https://sumonreview.com/tubetrivia-ai-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
Into the Box Keynote Day 2: Unveiling amazing updates and announcements for modern CFML developers! Get ready for exciting releases and updates on Ortus tools and products. Stay tuned for cutting-edge innovations designed to boost your productivity.
In software engineering, the right architecture is essential for robust, scalable platforms. Wix has undergone a pivotal shift from event sourcing to a CRUD-based model for its microservices. This talk will chart the course of this pivotal journey.
Event sourcing, which records state changes as immutable events, provided robust auditing and "time travel" debugging for Wix Stores' microservices. Despite its benefits, the complexity it introduced in state management slowed development. Wix responded by adopting a simpler, unified CRUD model. This talk will explore the challenges of event sourcing and the advantages of Wix's new "CRUD on steroids" approach, which streamlines API integration and domain event management while preserving data integrity and system resilience.
Participants will gain valuable insights into Wix's strategies for ensuring atomicity in database updates and event production, as well as caching, materialization, and performance optimization techniques within a distributed system.
Join us to discover how Wix has mastered the art of balancing simplicity and extensibility, and learn how the re-adoption of the modest CRUD has turbocharged their development velocity, resilience, and scalability in a high-growth environment.
Experience our free, in-depth three-part Tendenci Platform Corporate Membership Management workshop series! In Session 1 on May 14th, 2024, we began with an Introduction and Setup, mastering the configuration of your Corporate Membership Module settings to establish membership types, applications, and more. Then, on May 16th, 2024, in Session 2, we focused on binding individual members to a Corporate Membership and Corporate Reps, teaching you how to add individual members and assign Corporate Representatives to manage dues, renewals, and associated members. Finally, on May 28th, 2024, in Session 3, we covered questions and concerns, addressing any queries or issues you may have.
For more Tendenci AMS events, check out www.tendenci.com/events
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfJay Das
With the advent of artificial intelligence or AI tools, project management processes are undergoing a transformative shift. By using tools like ChatGPT, and Bard organizations can empower their leaders and managers to plan, execute, and monitor projects more effectively.
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...Juraj Vysvader
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I didn't get rich from it but it did have 63K downloads (powered possible tens of thousands of websites).
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
Navigating the Metaverse: A Journey into Virtual Evolution"
IDLs
1. Odessa innovation week. Developers day
Interface Definition Languages
Ruslan Shevchenko
<ruslan@shevchenko.kiev.ua>
@rssh1
Consultant @ Lynx Capital Partners
2. Plan
❖ Historical Overview [1990-2015]
❖ from Sun RPC and CGI to Thrift & RESTFull services
❖ Today-s landscape
❖ IDL-s and today application patterns
❖ Future
3. Historical Overvies: early times
1990. Web not exists yet.
Xamarin modes is discussed:
• two-sided hyperlinks
• decentralized document servers
• publishing hyperlink = publishing document
Protocols: File exchange.
Terminal Access
Custom
Services on top of command-line
or custom protocols
4. Historical Overview: ONC RPC
1991 - 1995 Sun (then ONC) RPC
RPC = Remote Procedure Call Service specs = C structures
+ function definitions
Some RPC-based services are still in use
(NFS)
RPC still available in standard Unix-based
OS distributives. (Linux/MacOS/FreeBSD)
5. Historical Overview: ONC RPC (2)
Service specs = C structures
+ function definitions
struct request {
int from;
int to;
};
struct result {
int number;
string line<>;
struct result *next;
};
typedef result *res_list;
program DEMO_SERVER {
version DEMO_VERSION {
res_list get_line(request) = 1;
} = 1;
} = 0x20000023;
generate code
Server stub
Client stub
6. Historical Overview: CGI
1993 CGI (NASA http server, than W3C)
CGI = Common Gateway Interface
No service specs.
Inputs of programs are request
Name/Value pairs (as strings)
Standard output of external program
directed to browser
8. Typed/Untyped interfaces
❖ Typed = IDL-based.
❖ RPC
❖ CORBA IDL
❖ SOAP
❖ Zeroc
❖ Thrift
❖ Google protobuf, gRPC
❖ Cap ’n proto
❖ Message Pack
❖ ……………..
❖ Untyped …
❖ CGI, Fact-CGI, …
❖ Plain XML
❖ Json, Jsonp
❖ RESTfull
❖ Auro
❖ Hessian
❖ Bjson
❖ BERT, BERT-RPC
❖ ………..
Dichotomy up to today
9. Historical Overview: CORBA
1991-1993. CORBA-1.0-1.2
• more general architecture guidelines then concrete standard.
• mapping to C
1996. CORBA-2.0
• IIOP (Interoperability)
• IDL mapping to C++ and Smalltalk,
1999 - 2001. Gold Times. CORBA-2.1 - 2.6
• Over 700 participants in OMG.
• W3C want to adopt CORBA as next web API (instead CGI)
• Portable Naming/Event/Service, Realtime specs, Valuetypes
• Official mapping to 14 programming languages (unofficial to alll)
2002. CORBA-3.0
10. Historical Overview: CORBA
1991-1993. CORBA-1.0-1.2
• more general architecture guidelines then concrete standard.
• mapping to C
1996. CORBA-2.0
• IIOP (Interoperability)
• IDL mapping to C++ and Smalltalk,
1999 - 2001. Gold Times. CORBA-2.1 - 2.6
• Over 700 participants in OMG.
• W3C want to adopt CORBA as next web API (instead CGI)
• Portable Naming/Event/Service, Realtime specs, Valuetypes
• Official mapping to 14 programming languages (unofficial to all)
2002. CORBA-3.0
Nobody cares, Industry have switched to XML
11. Historical Overview: CORBA
Reasons to migrate away from CORBA to XML-based RPC:
❖ CORBA Complexity and learning curve.
❖ // XML is easy - just print
❖ XML can be read by human.
❖ Easy usage from script languages
❖ XML is HTTP-based / Not need to open firewalls for new ports
❖ First CORBA systems was too fine-grained and slow.
❖ // When you print XML, you native design is coarse-grained
12. Historical Overview: XML-RPC/SOAP
1998. XML-RPC, (Microsoft)
• more general architecture guidelines then concrete standard.
2000. SOAP-1.1 = Simple Object Access Protocol.
• W3C recommendation
• RPC still guidelines. WSDL-1.0
2002 - 2005. Gold Times. SOAP-1.2 +
• WSDL-1.1 is formalization of WSDL-1.0
• OASIS: more than 100 XMLbased vertical standards.
• UDDI: universal registry of web applications.
• First public draft of WSDL-1.2
2007. WSDL-2.0 (=WSDL-1.2) become W3C standard
13. Historical Overview: XML-RPC/SOAP
1998. XML-RPC, (Microsoft)
• more general architecture guidelines then concrete standard.
2000. SOAP-1.1 = Simple Object Access Protocol.
• W3C recommendation
• RPC still guidelines. WSDL-1.0
2002 - 2005. Gold Times. SOAP-1.2 +
• WSDL-1.1 is formalization of WSDL-1.0
• OASIS: more than 100 XMLbased vertical standards.
• UDDI: universal registry of web applications.
• First public draft of WSDL-1.2
2007. WSDL-2.0 (=WSDL-1.2) become W3C standard
Nobody cares, Industry have switched to JSON/REST
14. Historical Overview: XML-RPC/SOAP
Reasons to migrate away from XML-based RPC to JSON:
❖ WSDL/SOAP Complexity and learning curve.
❖ // JSON is easy - just print
❖ JSON can be read by human.
❖ Easy usage from script languages.
❖ XML is too bloated.
15. Historical Overview: JSON-based API-s
2001. JSON (Douglas Crockford)
• Used for interaction for client-side javascript
2000. REST = Representational State Transfer.
• Phd of Roy Thomas.
• Architecture guidelines without concrete specification.
• Formulated in terms of XML API.
2002. Yahoo implements 1-st public JSON-based web service
2006 - 201(>5). Gold times.
• RESTfull/JSON is ‘default’ API for web apps
• Validation: JSONPath, JSONScheme, JSONRPC
• Typed extensions [Auro], binary variants [BJSON].
?
16. Mainstream loop
❖ Adoption <~~> Complexity
❖ Sometimes we need to do really complex things.
❖ Advanced technology become complex
❖ New loop with ‘something simple’.
17. IDL-based architecture today
Actually useful
❖ google protocol buffers, grpc: google.
https://developers.google.com/protocol-buffers/
❖ thrift: facebook. (opened via submiting to Apache)
https://thrift.apache.org/
❖ cap-n-proto: Sandstorm.ua
https://capnproto.org/
❖ Other …
❖ zeroc (http://zeroc.com)
❖ MessagePack (http://msgpack.org)
❖ FlatBuffers, SOE (Simple Object Encoding)
❖ …………………………
Pretty close to main ideas of CORBA IDL,
Still have no valuetypes
18. IDL-based architecture today
Good as
❖ Hight-level micro service description.
❖ Javadoc-like tools (if you steel use Json/REST: look at swagger)
❖ Static verification of interfaces.
Pay attention too:
❖ Async calls .
❖ Message passing interfaces (local API ).
❖ Traceability. (req-id)