Apr
13
Posted on 13-04-2011
Filed Under (General) by Pravin Ganore

I’m doing some projects that are to develop patterns. So, here’s some examples drawn from the WAG:

A typical application containing Web Roles, Worker Roles and communication Queues Azure is shown below:


A simplified version of this pattern with ASP.NET Forms Authentication for Azure Tables see below:

(0) Comments    Read More   
Apr
13
Posted on 13-04-2011
Filed Under (Cloud Computing) by Pravin Ganore

This week we begin a mini-series on migration of applications to the Windows Azure platform. How about that?

A recurring question in sessions about cloud computing is just about scenarios in existing on-premise and as we migrate to the cloud services.

What can we migrate? Layers that we enjoy? What is the architecture more indicative? What aspects of connectivity, control, hardware, administration, etc. that will be impacted?

So, I chose some interesting scenarios of migration to be discussed. Among them we will see:

  • Applications Line Of Business (LOB) departmental
  • E-Commerce Sites
  • SOA implementations
  • Reducing map and distribution processes
  • Applications with video / audio / streaming, among others.
  • The idea is to cause some issues, while we present architectures before / after each scenario. Here, the space is small to pass through all aspects of a project, but let’s exchange some ideas here.

For example, you have COM , COM + or MFC in your solution on-premise? These technologies are not supported on Windows Azure . I had this conversation last week with a company that has a series of old solutions in VB6, COM + and some components in C + + and MFC.

The Windows Azure platform supports standard libraries in C + +, some functions of the Win32 API and all resources of .NET 3.5 SP1, in addition to templates for Web Roles , WCF Web Roles , Worker Roles and Fast CGI . So we’ll see more details of architectural choices throughout the series.

And feel free to suggest new scenarios or actual cases in your company.

(0) Comments    Read More   
Apr
07
Posted on 07-04-2011
Filed Under (Cloud Computing) by Pravin Ganore

Consider another scenario that can take advantage of an environment in the cloud.

Imagine a solution based on Web Services that provide CRUD capabilities and business rules operating on a database. At the same time, the solution provided for administrative users, who use business rules as services in libraries, which also operate on the data model of the solution. Thus, customers through Web, navigate the application functionality, while administrative users use a client consuming resources of an App Server for configuration tasks, monitoring business, customization, administration, etc..

The following figure illustrates the scenario, which is very common in Web applications department:

Challenges

One important aspect in this type of architecture is the plan on the Web Services capabilities of the solution. It is common departmental applications quickly launch services that are good candidates for reuse by other departments. I’ve seen companies that built the batteries for a Web Services department, providing these services quickly to other groups within the enterprise, increasing the volume of users of the system.

In this case, there is the old problem of increasing scalability on these Web Services. In more sophisticated, some of these services can be part of new business offerings for external audiences, as well as customers and potential customers. This kind of aspiration is also interesting and very common, almost a mantra in some companies, like to take my web services into new products to internal and external business systems, which should offer to the market.

Attacking these Web services created by the company, we take a scenario as the cloud Windows Azure, the cloud hosting these services.

See the diagram below:


In simplified terms, the scalability of Web Services is now guaranteed through the WCF Web Service Roles that can scale as business needs change. At the same time, the database solution can be migrated to SQL Database Azure , making access to data more directly into the environment in Azure.

What are the main challenges in this type of migration:

  • State management
  • Performance
  • Security
  • Migration of the database for the cloud
  • Partitioning of the database (Sharing)
  • One of the major components of this solution is the AppFabric on Azure, which provides resources for hosting services in the cloud.

Some points of attention

  1. Be prepared to sacrifice control of hardware and software in exchange for a lower cost of management;
  2. In this combination of settings, maintaining discipline and log instrumentation will guarantee a more efficient process of troubleshooting;
  3. Design your system and web services for the horizontal scalability ( scale-out ) rather than vertical ( scale up ). In the process, some re-factoring of existing legacy systems can happen, be prepared;
  4. Use techniques for partitioning the database since the SQL Database Azure has a limit of up to 10 GB of bases, with no automatic partitioning in the cloud;
  5. Very important: Make a detailed plan for data migration. Depending on the business scenario, hold on-premise (locally) the critical data of clients on the application. regulation or risk policies and security may be motivating factors for the persistence of local data;
  6. Finally, always think of stateless services, ” Stateless “. This ensures high scalability of processes and services on the cloud, without risk of affinity.
  7. Thus we discovered a more interesting scenario for migration to the cloud. Of course, this analysis is not extensive and there are many other aspects.
(0) Comments    Read More