China's cloud computing services market will reach $1.1 billion trillion in 2014 and will grow at a compound rate of nearly 45% per cent in the future, according to the latest figures released by US market research companies. Of these, more than 55% of the market is from the application software that is the service market contribution, mainly including the software vendors through the cloud computing way to provide SMEs with the financial, business management and collaboration applications. Cloud services for the first time to pull the domestic IT industry to the international advanced countries at the same time starting the starting line. The traditional software vendors in China need to cross the barriers of cost, technology, market, talent and so on, and solve the problem of lack of operation ability after the "net" cloud. The appearance of the cloud platform provides the possibility for the software manufacturer to realize the cloud.
Technical difficulties in software cloud
Software Cloud is a cloud-based network to provide software services to the application model, for tens of millions of of small and medium-sized enterprises, cloud computing trend is an innovation is also an opportunity, the application of the right most likely to achieve new breakthroughs in business; for millions of large enterprises, Cloud computing services are the best means of flexibly allocating enterprise resources to improve the operation efficiency of enterprises. However, traditional software is confronted with various challenges in the process of cloud transformation, among which the main difficulty is the thinking and technology change of multi-tenant.
The traditional software sales model determines that each running instance of the software serves a customer individually, so the processing strategy for performance, scalability and scalability is designed for single customers, and for the cloud software application, in order to maximize the scale effect, The common use is for multiple tenants to share a running instance of the schema, that is, the multi-tenant architecture.
Software cloud is not only a shift to multi-tenant thinking, but also a process of transforming traditional software products into highly mature cloud applications with configurable, high-performance, and scalable scalability. This process is not easy to consider in terms of development costs, complexity, and team development capabilities.
Key technologies of Huayun data software cloud Platform
Single sign-on
SSO (single Sign on) is one sign-on, which means that users can access other application systems that trust each other on the Huayun data cloud platform only once they log on to the Huayun data cloud platform. Huayun Data Cloud Platform SSO authorization online, landing through this authorized third party cloud application, simply need to complete the authorization, then can use Huayun Data cloud Platform account and password login These applications, without re-enter the account and password.
The appearance of SSO authorization indicates that the Huayun data cloud is gradually constructing the perfect traditional cloud ecosystem. For Third-party software vendors or developers, the use of SSO licensing will make it easier for new users to enter, third party can also according to their own needs, based on the Huayun data Cloud Platform user system API for two development, and with Huayun data cloud Platform for data sharing.
Log in to an application system through a single sign-on process simple: Enter the user ID in the platform portal, and then enter the password, login system, the first is the authentication process, authentication occurs in the system to verify that the entity (person or program) is related to this user identity is the entity, Authentication is usually achieved by matching the password to the user's ID. After the login is complete, all software purchased by the user-owned enterprise becomes visible, and the user's role is matched to the use rights in each software.
The token ticket is passed through the URL to achieve single sign-on (SSO) through a "two handshake" approach. This way can solve the problem of cross-domain, high security, good stability characteristics, the specific verification methods and procedures as follows:
Automatic repair of high availability (HA)
Huayun Data cloud Platform to save the application template on distributed storage, easy to get the template quickly. Application monitoring service real-time monitoring the status and availability of application software services, and when the customer application instances are compromised, the use of templates in the cloud resource pool to automatically restore the application instance, in order to ensure that customers use application services uninterrupted ability.
This is illustrated below:
Application of cloud support components
Applying the cloud requires a very powerful, Easy-to-use Template Library feature. The so-called template, is on the platform to save a cloud application of the support of the server template. When needed, the system can pull out the specified template, quickly generate an instance cloud application server into operation. This process is very fast, usually within an hour.
Dynamic Cloud computing Resource allocation
Modeling virtualized resources based on distributed architectures, this paper describes the resources from the service level and resources level, and puts forward a comprehensive load balancing scheduling strategy and algorithm for real-time monitoring and feedback of computing and network resources, which can effectively monitor and manage the resources and dynamically expand the resources in the cloud environment in an automated way. Implement dynamic cloud computing resource allocation.
According to the load situation in cloud computing resource cluster, the computational energy, elastic expansion and automation of the automatic allocation and scheduling cloud software are used to save the system resources and increase the flexibility.
The resource service based on cloud computing is more and more dynamic and flexible, and the elastic expansion and dynamic allocation of resources have been confronted with unprecedented challenge, we can't simply measure the advantages and disadvantages of the resource allocation algorithm from the aspect of cost, resource utilization, weight or time single, and solve the competition of the limited resources effectively.
In view of the above problems, the Huayun data Cloud Platform proposes a QoS-constrained resource allocation algorithm and an automatic resource allocation mediation algorithm, which effectively solves the competition of limited resources by multiple tasks, considers the dynamic allocation of resources from the two aspects of users and resource providers, and ensures the multidimensional QoS requirements of user tasks, The improvement of the comprehensive utility value of user satisfaction, resource dynamic allocation optimization and resource utilization is sought.
Application of software Cloud process
Huayun data Software cloud Platform realizes the transformation of traditional software cloud software in three steps.
In order to better understand the traditional software "cloud" of the three-step, the article will be combined with a set of traditional management software (hereinafter referred to as a software) for the example to illustrate.
A software in network interconnection based on the use of advanced B/S architecture, is a portable, object-oriented Java language Development management software. This software takes the enterprise internal operation chain as the main line, takes the human resources management, the financial management, the supply chain management, the audit management as the carrier, integrates, optimizes the enterprise resources, constructs the enterprise precise management mechanism and the platform, satisfies the level management precise management needs, provides the data support for the enterprise Operation decision-making
The first step: adapting the model of cloud computing IaaS with traditional software
At present, cloud computing is a new thing, for security, confidentiality and other factors, although the demand for cloud software is very strong, but really willing to use the cloud software to replace the traditional application of the user is not many. In this case, the software service provider needs to tailor a set of software for each customer and deploy it to the cloud, each using a separate database instance and application server instance. The IaaS service through cloud computing can maximize the utilization of hardware resources and reduce the cost of hardware and operation maintenance. Considering that each customer has customized requirements, software configuration is the focus of this phase, the first step can be from the data, functions, interface, process 4 aspects to provide a good configurable, to adapt to the actual situation of different types of tenants.
A software is designed on the basis of a three-layer structure, the three-layer structure technology is implemented by placing a large number of transaction logic from the client in the original two-tier structure or the stored procedure on the database server to the middle tier, thereby reducing the load on the client and database server side, and because of the layered structure, In the design phase of the system to fully consider the configuration and scalability, so the traditional software to achieve "cloud" the first step is very easy, in addition to doing the billing model changes (to achieve on-demand), the application architecture of almost no need for change.
Step two: The Application architecture transformation with the goal of realizing multiple tenant single instance
When the tenant size reaches a certain amount, it is necessary to realize the application architecture of multiple tenant single instance, which is the second step of implementing the transformation, when the cloud model has the greatest advantage over the traditional mode in reducing the cost.
The key to implementing a multi-tenant architecture is to ensure data segregation among different tenants through a number of policies, so that different tenants can share the same application's running instance and provide users with independent application experience and data space. There are independent database, independent instance name of shared database, shared database and so on, the most common is the realization method of shared data structure.
A software for the implementation of multi-tenant application architecture, first in the tenant management to increase the number (including registration, ordering, billing, etc.) at the same time data isolation (change structure, increase tenant ID field), the final implementation of the "shared database, shared data structure," the multi-tenant design.
Step three: Realize the application of high performance cloud software
With the increasing number of tenants, the centralized database performance will become the performance bottleneck of the whole cloud software after the application architecture of Multi-Tenant Singleton is implemented. How to satisfy the requirement of the level expansion of cloud software through some strategies, it becomes a problem to be solved in the design of cloud software architecture. That is, in a large number of users, without changing the application architecture, but simply adding hardware devices, you can support the growth of application scale, which is the third step to address the problem.
A software architecture uses the Java EE Application Mode of the three-tier architecture, that is, the front-end is the HTTP Server processing HTTP request, the middle is processing application Logic application server, the latter is the implementation of data storage and exchange of the database server; Therefore, based on Apache HTTP server, Load balancing and clustering can be easily achieved. By tenant management of HTTP servers, the flow aggregation and distribution of service requests by different tenants will enable SLA (Service level agreement) management on tenant granularity. The database layer adopts database cluster technology, separates the data storage node, database management system and front-end application of database system, establishes huge and stable storage resource pool, and stores the database in each data node through the Intelligent dispatch strategy of database management system. The front-end application cluster can efficiently manipulate the records of the Data Storage node center through the API provided by the database system. The fault of a single data node does not affect the work of each database cluster system, and it is equipped with the technology of fault heat transfer, which guarantees the security of the data well.
Features of Huayun data software cloud Platform
Huayun data software cloud Platform using KVM as the underlying virtualization technology, KVM (full name is kernel-based virtual Machine) is a fully functional virtualization solution on the Linux x86 hardware platform, which includes a loadable kernel module, Provide and virtualize core architecture and Processor specification modules.
KVM is a hardware-based, full virtualization technology with less core code and superior resource utilization and performance compared to other commercial virtual technologies. Based on the KVM, the resource scheduling platform is set up to accept the Computing component resource request of cloud software application and to allocate the resource dynamically. Therefore, the Huayun data software cloud Platform has the following characteristics:
High Availability
The application of large-scale distributed storage technology, cloud software data three copies of distributed write storage. Once the storage physical damage occurs, the cluster initiates automatic repair, and then writes a copy of the data to another available storage node, and the entire process of cloud software application services is almost 0 interrupted.
Super protection
A "soft security layer" has been redefined between cloud software and computing hardware, users can define ports, networks, processes and other security items for cloud applications to provide convenient and rapid security, simple settings, can effectively resist password brute force, DDoS attacks, worms, Trojans, ARP and other attacks, Greatly improve the security of the cloud server.
Depth monitoring
Provides multi-level monitoring of computing components and cloud software to help users manage applications and services easily. It can monitor the network, CPU, memory, I/O and core process of the computing component, and ensure the health running state of the cloud service. At the service level, you can customize the port, network, performance, HTTP and other monitoring items to ensure service availability. When abnormal monitoring results, the monitoring center will be based on the type of exception to the user alarm, for common problems, the system is equipped with an exception recovery strategy, the most likely guarantee without human intervention in the continuous availability of services.
Encrypted storage
The data between different users is completely isolated, and the data layer has complete access control, which restricts the access and reading of the data by illegal users. The main application of kernel-level and disk-level two-layer encryption protection.
Kernel-level encryption, at the kernel level to achieve data encryption and decryption operations, in the I/O Manager and file system to add a new layer of encryption, to achieve the encryption and decryption of files, data.
Disk-level encryption is based on AES and RC6 encryption technology, which is suitable for high-density cloud computing cluster algorithm combination and optimization, to achieve security, rapid encryption and decryption, to protect user data security.
Using Huayun Data cloud computing technology to realize cloud electric business products
As a traditional provider of E-commerce and enterprise management software, Shanghai far-abundant Information Technology Co., Ltd. is also facing the challenges of market cloud demand. As a solution provider covering the B2b/b2c/erp field, we hope to realize the leap from traditional software to cloud software, and build a "rapid construction, elastic upgrade, module expansion" as one of the cloud E-business products service for the electric Business enterprise.
According to the specific requirements of far-abundant information technology, for its Shopbuilder series of electrical products, Huayun data for its customized enterprise cloud electric products solutions.
Building the platform of the bottom cloud computing component
Through Huayun Data cloud computing technology, build or transform high available distributed cloud computing cluster, realize dynamic adjustment of computing resources across physical server through automatic management platform, share separate physical server, limited guarantee priority system business demand, realize resource utilization maximization.
Build multi-tenant software cloud Platform
Using Huayun data Software cloud technology, virtualization far-abundant shopbuilder product application middleware, based on application middleware virtualization, different from server virtualization in the operating system level of virtualization, but middleware level virtualization. The advantage of application middleware virtualization is that it can make better use of all kinds of technology frame and platform, and make use of the original equipment effectively.
Building a highly available data warehouse
At the data storage level, includes storage hardware architecture virtualization and storage software architecture virtualization.
Integrated electrical Shangyun via SSO
Based on the virtualization of the Shopbuilder cloud version of the product as the core, the use of SSO technology, including data warehousing, ERP, security protection, collaborative office, marketing, including a number of kits to form a cloud products from service procurement, supply chain application services, Operating application services and security Accelerator cloud as one of the cloud power products platform, users can open their own online enterprise business Customer Mall, and according to the actual needs of the choice of ERP, OA and other service modules. The cycle of electronic business completion is shortened from the traditional way to several hours.
The company's cloud products solutions include IaaS layer of the virtualization of the bottom, cloud host, network, storage volume management, the underlying elements of the monitoring, but also has customers from the service procurement, the overall operation of the data center, customer support platform, such as the rich functions of the PAAs layer. Through the cloud transformation of the traditional complex software products, Shanghai far-abundant has opened up a new product market, the business income has achieved a substantial growth.
End
Technology development, so that the traditional software field in the seemingly saturated market will always have a new territory to open up. If the leader of industry is invariable, it is difficult to stand firm. Every new technological innovation can lead to a reshuffle of the market. Cloud computing is changing the traditional software market.