EthoSafe — Infrastructure

Opportunity

Social media is becoming a pervasive force on the web. Businesses want to realize the benefits of a more expressive interaction between a brand and its customers. However, the risk of inappropriate content damaging the brand's reputation or distressing its customers is sufficiently high to give most companies pause. EthoSafe decided to build a solution that mitigates this risk and allows brands to safely move into social media.

Solution

While Agile Commerce built the entire EthoSafe system, including the client extranet, public API, internal reviewing tools, and artificial intelligence agents, it is our work on their core infrastructure that we are the most proud of. This core is comprised of two main components: the orchestrator and the analysis engine.

The orchestrator is the central set of servers that take a piece of content for review, route it through the various analysis components (including human reviewers and the analysis engine), aggregate review data, and determine whether or not a piece of content conforms to the acceptable use policy of a website. It was built using Microsoft Windows Workflow Foundation. This technology allowed us to create a workflow that could incorporate disparate systems and human tasks in a way that was fault-tolerant, easy to extend, and easy to understand. The screenshot on the right shows a portion of the workflow, as it appears in the graphical editor for the workflow.

The analysis engine is an elastic cloud of Linux servers running on Amazon Web Services. The number of servers running in the cloud can be increased or decreased in response to the demand for content review. By hosting the analysis engine in the cloud, the overall system capacity can be increased by an order of magnitude, and beyond, within a matter of seconds. Similarly, its capacity can be decreased if demand lessens. This allows the system to expand during the day and contract at night, when fewer people are online.

Benefit

Microsoft Windows Workflow Foundation enabled us to express the core logic and processes of EthoSafe in a way that made altering the flow of data and adding new capabilities trivial. New logic can be dragged and dropped into the workflow and old logic can be easily reshuffled. This allows EthoSafe to respond more quickly to changing business opportunities and to incorporate new technology.

Hosting the analysis engine in the cloud lead to significant cost savings and near limitless scalability. The number of servers can be expanded and contracted quickly to respond to increased or decreased demand. Using a more traditional hosting model of provisioning servers from an ISP would have created an early over-expenditure of funds as numerous servers, many of which would sit idle between peaks, would have been required. Traditional servers also would have throttled the system in a way that scaling could only be done with several days of lead time. Cloud computation allows EthoSafe to scale in real-time.