api - designing & supporting business critical with rest/hateoas
Post on 16-Apr-2017
77 Views
Preview:
TRANSCRIPT
Anant Corporation
Research & DevelopmentAPI - Designing & Supporting Business Criticalwith REST/HATEOAS
What do we do?
Streamline, Organize and Unify Business InformationPortals | Integration | Search
Agenda
•Overview of REST/HATEOAS•Delivering Powerful Software as a SPA•Challenge : Fast AND Furious•Solution - Pragmatic Design at Each Layer
REST / HATEOAS• REST - Client / Server, Stateless,
Cacheable, etc.. • HATEOAS - Engine of Application
State How do we do this , really?
CollectionsPatentsUsersCasesQueriesTags
Usual “Search” / Consumer Apps• Interface - Frontend Layer (UI) is
Deployed as Static Files from CDN• Software - Business Logic (API) is
Deployed as Stateless Services • Database - Persistent information (Data)
is any of SQL/NoSQL/Graph/Index/*• Systems - Different Applications
(Systems) are hosted in private/public/* clouds
Usual “Search” / Consumer Apps
• Interface 10,000 Users, 1,000 Simultaneous Searches
• Software 200-200,000 Results, Highlights, HQ Images
• Database8,000,000 Objects, 20-50 Related Docs
• Systems 40-50 Servers, 5 Apps, 2 Databases, Several Frameworks
Challenge - Fast AND Furious
Patent Office - PATFT
EST – Crazy Queries
(method OR process OR steps) AND ( (nodes ADJ4 rank$) SAME (database or graph or index) )
EST – Exploring Search Technologies
EST – Exploring Search Technologies
• Dojo! Angular! Knockout! Ember! Oh My!End Users Don’t Care - Really They
Don’t. • Dictated by a balance of Team / Customer /
RealityDevelopers Need to be Okay Maintainers Need to be Happy
• Serving up the UI/API/Images Properly Special Web Servers for JS/HTML/CSSSpecial App Servers for to serve up
Images Special App Servers for APIs
Interface - What Framework?
• Data Update Frequency dictates Caching/Concurrency
• Data Security dictates Authentication • Data Relevancy dictates Linkage• Data Need dictates Size
Software - Serving API
• Relational is still relevant. It's fast. It's reliable. It's related.
• NoSQL works, choose wisely. *** (Consistency vs. Reliability)
• Index is an index. Don't use it as NoSQL. (SolR/ElasticSearch)
• Some data changes, while other data doesn't. (Transactions vs. Records)
Database - The Middle Path
• Criticality Influences Everything Mission / Business / Health Critical?
• SLA / OLACustomers have “Service Level Agreement” Functional Groups have “Operational Level Agreements”
• Commercial support means you can blame people and get them to fix it.If it breaks, you better own it, or get someone else to fix it, and pay them.
Systems - Tying it All Together
Anant - D.C. Office
ContactRahul Singh
• Web: http://anant.us• Email: rahul@anant.us• Phone: 1.855.ANANTCO• 1010 Wisconsin Ave. NW,
Suite 250Washington, D.C. 20007
top related