Masaryk university faculty of informatics



Download 150.94 Kb.
Page2/12
Date23.05.2017
Size150.94 Kb.
#18797
1   2   3   4   5   6   7   8   9   ...   12

2.2 Theoretical part


The text of my thesis has also its own structure. It starts with a problem statement and the presentation of the concepts and technologies that will be used and referred to throughout the thesis. Each chapter then typically corresponds to one Amazon Web Service. Chapters are also internally structured, starting with service overview – description of the service – and following up with implementation details. This second part describes how and where each service is used, however it can also mention potential suggestions or issues if these apply.

3 Kentico CMS

3.1 Content Management System


To gain a better understanding of what exactly Kentico CMS is, we first need to establish the term “content management system”. As the name suggests CMS refers to a system, typically a web-based application, whose purpose is to manage the content of a web site by allowing its user publishing, editing and modifying the content from a central interface. And although content management systems differ from one to another in both complexity and features, they usually provide format management, revision (version) control, indexing and search. Each CMS contains two primary elements, which enables to better separate the responsibilities – CMA7 and CDA8. CMA serves as a front-end interface for the content manager or user who might not be knowledgeable in the use of HTML to easily manage creation, modification and removal of the web site’s content. CDA then enables to compile these content modifications to update the web site. CMSs are mostly used with web sites featuring blogs, articles, news and shopping however they also tend to be fairly popular in corporate world. Some of them, like WordPress, Joomla and Drupal for instance, are freely available while others, such as DotNetNuke or Kentico CMS, first require purchasing a license [5].

3.2 Kentico


Kentico CMS is a web content management system built with Microsoft ASP.NET framework and Microsoft SQL Server. Meant primarily for corporate world, Kentico covers five main areas: content management, e-commerce, social networking, intranet and online marketing. For its user Kentico provides two ways of managing the content, either through CMS portal engine offering straight-forward, Microsoft Word-like WYSI-WYG9 editor, or through Microsoft Visual Studio for even deeper control over the site’s content [6]. Additionally, Kentico offers many other features for web site development such as mobile device support including responsive behavior, banner management and chat module, third-party app integration (Salesforce.com, Data.com), web analytics and even extension of CMS in form of EMS10 which adds functionality for campaign delivery, contact management and seamless creation and deployment of marketing emails [7]. Internally, Kentico CMS installer allows for the creation of three categories of projects: web site project, web application project and Windows Azure project. Additionally, it provides the user with an option to customize Kentico by specifying web server configuration and database settings, selecting components and choosing web site templates. Moreover, Kentico allows the user to include his own code, pages and templates to CMS and thus to extend its core functionality.

4 Cloud Computing

4.1 Origins


Although cloud computing, in the way we recognize it today, has only been around for couple of years (since 1999), its origins lie in much older history, with the very introduction of the Internet and business technology. First attempts of “cloud computing” can be technically dated to the early 1950s when the introduction of CPU time sharing enabled multiple clients to use large-scale mainframe computers with much greater efficiency. However, more accurate concepts only appeared in 1960s when American computer scientist John McCarthy introduced the idea of “computation being delivered as a public utility”. Moreover, it is during these years that ARPANET, the forerunner of the Internet and ultimately modern cloud, was being developed and consequently released in 1969. Since 1970 the development of Internet has picked up rapidly with increasingly more companies becoming part of global network which created an essential starting ground for the development of modern cloud computing [8]. Then, at the end of 90s it was American company Salesforce.com that had become one of the major movers in cloud area by delivering their business products to their customers through web interface. Shortly after this, Amazon took over by introducing its massive web-based shopping and retail services in 2002. Additionally, it was Amazon that started to put considerable resources into the development of cloud technology and modernization of its datacenters. This effort reached its climax in 2006 with Amazon launching its large-scale web-based infrastructure – Amazon Web Services. Early on other companies began to follow in Amazon footsteps. Google released its cloud computing platform Google App Engine in 2008 and closely afterwards in 2010, Microsoft’s platform Windows Azure was introduced. Then in 2011, IBM announced its proprietary IBM SmartCloud and in 2012 Oracle followed with Oracle Cloud [9].

4.2 SaaS vs. PaaS vs. IaaS


Cloud, in a larger context, is a very general term that can refer to any kind of software or hardware available through some kind of network (not necessarily the Internet) as a service. For this reason three major forms of cloud computing were established, Software as a Service, Platform as a Service and Infrastructure as a Service, based on the type of service that is predominant. Additionally, each of these introduces a different level of abstraction from underlying architecture, simplicity of usage and degree of control over applications.

Software as a Service or “on-demand software” is the basic and the most regular form of cloud computing. It refers to software applications distributed over the Internet in one-to-many fashion as opposed to the traditional one-to-one. These apps are managed by a third-party vendor – application service provider – and are accessed directly through a web browser. Users of SaaS usually don’t possess any control over the application or its resources, on the other hand they are shielded from its complexity and maintenance as SaaS eliminates the need of software installation on individual machines and takes care of potential updates and patches. Individual software can be either available for free, as it is in case of Google Docs, Dropbox or SkyDrive, or is offered through pay-as-you-go model just the way at it is with Platform as a Service and Infrastructure as a Service. The good example of popular paid SaaS would be Salesforce.com.

Platform as a Service is the second most frequent segment of cloud computing and can be thought as a computing platform providing developers with proprietary API11 that allows them an easy creation and deployment of their applications without the need of buying and managing underlying software and hardware infrastructure. PaaS provides developers with integrated development, test and deployment environment which makes their application development process quicker and more efficient. And although control over the application and its data is given to developers, it is still vendors who are responsible for managing runtime, middleware, OS12, networking and virtualization. Additionally, as in the case of SaaS, PaaS users are guaranteed regular updates and hotfixes by vendors. Moreover, PaaS allows for better stability through scaling (or auto scaling), which essentially allows the user to cope promptly and efficiently with sudden increases and decreases in application usage and load. Windows Azure (Web Sites and Cloud Services) as well as Google App Engine are among the most popular proprietary PaaS on the market. In addition to paid cloud platforms, there exist several free alternatives as OpenStack from Rackspace or OpenShift from Red Hat.

Last but not least is Infrastructure as a Service. This form of cloud computing delivers and offers control over whole infrastructure including servers, storage and networking. With IaaS the users don’t purchase hardware, establish networks and install software such as OS but are given fully outsourced solution and are only billed for the amount of resources they use. Moreover, IaaS enables them to create and delete virtual machines on demand, to scale them, to manage access and networking, to add additional storage, to exploit highly scalable database systems (both relational and non-relational) and to store unstructured data as well as obtain various statistics on individual services. As such IaaS represents the most complete solution, however at the cost of greater complexity in management and limited platform maintenance from vendor since now it is user’s responsibility to maintain and update his software. Internally, IaaS can be divided into public cloud (where resources are shared and accessed over the Internet) and private cloud (where resources are only available on private network). Companies such as Microsoft and Google offer IaaS as a counterpart to their PaaS, however the largest provider of internet based infrastructure services is by far Amazon with its Amazon Web Services [11][12][12].




Download 150.94 Kb.

Share with your friends:
1   2   3   4   5   6   7   8   9   ...   12




The database is protected by copyright ©ininet.org 2024
send message

    Main page