Download presentation
Presentation is loading. Please wait.
Published byDominick Payne Modified over 9 years ago
1
By Matt Deakyne, Adam Krasny, and Derek Meek
2
History of ICE ICE stands for Internet Communications Engine Object-oriented middleware allowed programmers to build distributed applications without having to be a networking guru Middleware before ICE.NET Java RMI CORBA SOAP
3
Disadvantages of other options.Net – only supports a few languages Java RMI – only for Java CORBA – unnecessarily complex SOAP – inefficient, unsecured
4
Goals of ICE Object-oriented middleware Features that support development of realistic distributed applications Avoid unnecessary complexity Efficiency in bandwidth, memory use, and CPU overhead Built-in security
5
Goals of ICE Summary: “Let’s build a middleware platform that is more powerful than CORBA, without making all of CORBA’s mistakes.”
6
Advantages of ICE Independent of Machine, Language, Operating System, Implementation and Transport Supports threading, multiple interfaces, and synchronous/asynchronous messaging Available source code
7
How ICE works Uses slice (specification language for ICE) to describe the types and object interfaces used by an application Description independent of implementation Uses compliers to generate code in specific language C++, Java, C#, Python, Ruby, PHP Purely declarative language
8
How ICE works (cont’d) Generates Client and Server Can be implemented in two different languages Communicate through slice definitions Can pass objects and make calls on each other
9
How we used ICE Need ICE to integrate three main elements CRM Database Database in MySQL Tracking Service Java Optimization Engine Java
10
Short-Term Goals Automatic updating to the CRM upon delivery Automatic recalculation of routes with new orders Web service allowing customers track order status
11
CRM Database Accessed through web server when customers place orders, view current delivery status Allow tracking service to update delivery status Allow optimization engine to obtain new orders Allow optimization engine to post optimal routes
12
Optimization Engine Reorganizes orders for maximum efficiency Needs to obtain new orders from CRM Needs to obtain current routes from tracking service Post routes back to tracking service
13
Tracking Service Knows where all trucks are at all times Post new routes from optimization engine Send current routes to optimization engine Send delivery notification to CRM Database
14
Consistent Data Types ICE enforced data type coherency between platforms ICE run time converted abstract definitions into concrete types
15
Overview of Application
16
Long-Term Goals Allow customers to place track orders online Client auctions, bid for shipment
17
Conclusion ICE is aggressively expanding Support of PHP, Python, Ruby makes it unique Very powerful, yet simple
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.