Newsletter Archive
ZeroC published 28 issues of Connections containing a wealth of information on topics that did not fit neatly into the Ice Manual. Although we no longer publish the newsletter, we continue to enhance the FAQ and publish in-depth technical articles and white papers.
Articles are grouped into the following topics:
- General Topics
- IceGrid
- Glacier2
- IceStorm
- Freeze
- Ice for C++
- Ice for Python
- Ice for Ruby
- Ice for PHP
- Ice for Silverlight
- Threads and Concurrency
- Application Integration
- E-Commerce
- Embedded Ice
- Release-Specific Articles
General Topics
- To Slice or Not To Slice
- This article examines the need for type systems and type definition languages and contrasts the approach taken by Ice with Web Services.
- Proxies
- Proxies are a fundamental concept of Ice. This article explains what proxies are and how to use them.
- The Grim Reaper: Making Objects Meet Their Maker
- This article describes how to get rid of objects that have been abandoned by clients.
- The Samsara of Objects: Life Cycle Operations
- This article explains how to implement creation and destruction of Ice objects.
- Can a Leopard Change its Spots?
- How to version deployed applications without breaking everything in sight.
- Asynchronous Programming
- Asynchronous invocation and asynchronous dispatch allow clients and servers to regain the thread of control while an operation is in progress.
- Background I/O
- New features added with release 3.3 make it impossible for a caller of an asynchronous operation to block.
- Dynamic Ice (Part 1)
- Untyped invocation and dispatch enable the implementation of very efficient message forwarding with Ice.
- Dynamic Ice (Part 2)
- The Ice streaming APIs allows an Ice application to invoke and dispatch operations without any compile-time knowledge of parameter types.
- Write Once, Read Everywhere
- How to generate documentation from Slice definitions.
- Protocol Compression: Friend or Foe
- How to effectively use protocol compression to increase throughput.
- Ice and Character Encoding
- How to use different codesets with Ice for C++.
- Optimizing Performance of File Transfers
- Performance tuning for Ice applications (not necessarily just for file transfers).
- Using Ice in Windows Services
- How to turn an Ice server into a Windows service.
- Connection Management in Ice
- A detailed look at how the Ice run time establishes and tears down connections.
- PayPal: E-Commerce without Ice
- An analysis of the ubiquitous electronic payment service's use of HTTP for RPCs.
IceGrid
- Ice and Grid Computing
- Preview article that describes the features of the initial IceGrid release.
- Teach Yourself IceGrid in 10 Minutes
- A bare-bones introduction to getting started with IceGrid.
- Grid Computing with IceGrid
- A feature overview of IceGrid with examples.
- IceGrid Sessions and Resource Allocation
- How to use the session management features of IceGrid to control access to resources by clients.
- IceGrid Security
- How to secure client access to IceGrid resources.
- Session Management with IceGrid
- How to to combine IceGrid access control and session to protect a Grid against malicious clients.
- Custom Sessions and IceGrid
- How to extend IceGrid's session management to cater for specific application needs.
- IceGrid Replication
- How to configure a replicated IceGrid registry.
- Master–Slave Replication with Ice
- How to use master–slave replication in your Ice applications.
- Migrating from IcePack to IceGrid
- Transition guide for IcePack users to move to IceGrid.
- Introduction to IcePack
- Introductory article on IcePack (now superseded by IceGrid).
- Advanced IcePack
- Using advanced features of IcePack (now superseded by IceGrid).
Glacier2
- Teach Yourself Glacier2 in 10 Minutes
- How to get started with Glacier2.
- Session Management with Glacier2
- How to use Glacier2 sessions to secure access to resources and to clean up resources when clients disconnect.
- Advanced Use of Glacier2
- Using Glacier2 to protect against denial-of-service attacks and create scalable applications.
IceStorm
- An Introduction to IceStorm
- Using IceStorm for decoupled event delivery to multiple consumers.
- Highly Available IceStorm
- Fault-tolerant features for IceStorm added for the 3.3 release.
- IceStorm 3.2
- New features in IceStorm for the 3.2 release.
Freeze
- A Persistent Chat Server
- Using Freeze to add persistence to an existing application.
- FreezeScript
- Migrating databases to new schemas with FreezeScript
- Freeze Maps
- An in-depth look at Freeze maps and how to use them.
- Freeze Indexes
- Using Freeze indexes to speed up data access.
Ice for C++
- Who's Counting?
- An explanation of how Ice smart pointers work and how to use them effectively to easy memory management of C++ applications.
Ice for Python
- Ice and Python—A Match Made in Heaven?
- Getting started with Ice for Python.
- Interpreted Ice: Distributed Application Development on Steroids
- Tips and tricks for prototyping, debugging, and maintenance, for Python and other languages.
Ice for Ruby
- Ice for Ruby
- An introduction to writing Ice applications with Ruby.
Ice for PHP
- EBuddy: E-Commerce with Ice
- Building an electronic payment service with IcePHP.
Ice for Silverlight
- Every Cloud has a Silver Lining
- An introduction to Ice for Silverlight, a ZeroC Labs project that integrates Ice with Microsoft's new platform for interactive Web applications.
Threads and Concurrency
- Thread-Safe Marshaling
- An introduction to thread-safety issues for Ice servers.
- Avoiding Deadlocks (Part 1)
- Strategies to detect and debug deadlocks in threaded applications.
- Avoiding Deadlocks (Part 2)
- Design strategies to avoid deadlocks.
Application Integration
- Integrating Ice with a GUI (Part 1)
Integrating Ice with a GUI (Part 2)
Integrating Ice with a GUI (Part 3)
Integrating Ice with a GUI (Part 4) - Four-part series of articles on various aspects of integrating Ice clients with a GUI.
- Taxing Times
- How to integrate Ice with Microsoft Excel and Word applications.
- An Autonomous Vehicle using Ice and Orca
- How Ice was used for communications in a car that drives by itself.
- Beyond Freeze—Persistence with Ice (Part 1: The Basics)
Beyond Freeze—Persistence with Ice (Part 2: Advanced Topics) - Two-part series of articles on integrating Ice applications with relational database management systems.
- Implementation and Interface: The ControlServer (Part 1)
Implementation and Interface: The ControlServer (Part 2) - Two-part series of articles on designing a control system using Ice.
E-Commerce
- EBuddy: E-Commerce with Ice
- How to create a simple e-commerce system using Ice for PHP.
- PayPal: E-Commerce without Ice
- An overview of the PayPal payment APIs, and how to do better with Ice.
Embedded Ice
- Ice-E: A Preview
- Preview article describing Ice-E, ZeroC's embedded version of Ice.
- Ice-E 1.1 : What's New?
- New features of the Ice-E 1.1 release.
Release-Specific Articles
- New Features in Ice 3.1
- Overview of new features added to Ice 3.1.
- API Changes in Ice 3.1
- Summary of API changes in Ice 3.1.
- What's New in Ice 3.2?
- Overview of new features added to Ice 3.2.
- New Features and Changes in Ice 3.3
- Overview of new features added to Ice 3.3.