Use of svn in web application

Subversion manages files and directories, and the changes made to them, over time. This allows you to recover older versions of your data or examine the history of how your data changed. In this regard, many people think of a version control system as a sort of “time machine.”

Managing web applications in SVN is tricky for some reasons:

When using revision control, a programmer is always working on a ‘working copy’ of the project. In traditional software engineering, this copy is somewhere on the his machine, as it’s a stand-alone application. In web development, however, we’re talking about webspace. Should every developer have a PHP environment on his machine then? Shouldn’t all programmers work on the exact same server configuration? What about Windows and Mac users? Web Application Development India

This means the working copies should be best on one webserver, along with an SVN client. Thus, we need some interface (the most simple one being SSH) to access it. Maybe a rich web client would be even better.

The application needs to be deployed to a live webspace. This might happen quite often and should be as painless as possible.

Version Control Terminologies

Let us start by discussing some of the terms that we will be using in this tutorial.

Repository: A repository is the heart of any version control system. It is the central place where developers store all their work. Repository not only stores files but also the history. Repository is accessed over a network, acting as a server and version control tool acting as a client. Clients can connect to the repository, and then they can store/retrieve their changes to/from repository. By storing changes, a client makes these changes available to other people and by retrieving changes, a client takes other people’s changes as a working copy.

Trunk: The trunk is a directory where all the main development happens and is usually checked out by developers to work on the project.

Tags : The tags directory is used to store named snapshots of the project. Tag operation allows to give descriptive and memorable names to specific version in the repository.

Branches: Branch operation is used to create another line of development. It is useful when you want your development process to fork off into two different directions. For example, when you release version 5.0, you might want to create a branch so that development of 6.0 features can be kept separate from 5.0 bug-fixes.

Working copy: Working copy is a snapshot of the repository. The repository is shared by all the teams, but people do not modify it directly. Instead each developer checks out the working copy. The working copy is a private workplace where developers can do their work remaining isolated from the rest of the team.

Commit changes: Commit is a process of storing changes from private workplace to central server. After commit, changes are made available to all the team. Other developers can retrieve these changes by updating their working copy. Commit is an atomic operation. Either the whole commit succeeds or is rolled back. Users never see half finished commit.

To know more about our web and mobile development service visit http://evincetech.com.
For more information, please contact us with the specifications for your project. You can email our sales team at info@evincetech.com, also you can call us at following numbers.
India: (+91) 44 42170775, (+91) 91766 40375
USA [Toll Free]: 866 220 6565

Amazon Services for Magento Hosting

Listed below are the reasons for using Amazon service for magento application:

  •  Amazon Elastic Compute Cloud (EC2) -Amazon Elastic Compute Cloud delivers scalable, pay-as-you-go compute capacity in the cloud.
  • Auto Scaling – Auto Scaling allows you to automatically scale your Amazon EC2 capacity up or down according to conditions you define.
  • Elastic Load Balancing -Elastic Load Balancing automatically distributes incoming application traffic across multiple Amazon EC2 instances.
  • Amazon CloudFront (CDN) – Amazon CloudFront is a web service that makes it easy to distribute content with low latency via a global network of edge locations.
  • Amazon Relational Database Service (RDS) – Amazon Relational Database Service is a web service that makes it easy to set up, operate, and scale a relational database in the cloud.
  • Amazon Route 53 – Amazon Route 53 is a highly available and scalable Domain Name System (DNS) web service.
  • Amazon ElastiCache – Amazon ElastiCache is a web service that makes it easy to deploy, operate, and scale an in-memory cache in the cloud.
  • Amazon Simple Storage Service (Amazon S3) – Amazon S3 is storage for the Internet. It is designed to make web-scale computing easier for developers.
  • Flexibility – One of the most important features of Amazon AWS is its flexibility. The communication of all AWS services are working together perfectly. AWS offers a great API which brings an ability of creating new instances ( server ), overbalance, external database ( RDS ) and storage ( NFS ) on demand. You can use all these services just in the moment they are created. In case you need more server power, memory and space you can just change the instance type and you´re done. Server managing was never easier and faster.
  • Performance – The speed of AWS is just fantastic. The performance of the “Elastic Block Storage” is similar to S3, but it offers more features.  You get a higher reliability than most standard hosters (data center) world wide offer. Magento Development India
  • AWS Security – At a high level, Amazon taken the following approach to secure the AWS infrastructure.

Physical Security: Amazon has many years of experience in designing, constructing, and operating large-scale data centers. AWS infrastructure is housed in Amazon-controlled data centers throughout the world. Only those within Amazon who have a legitimate business need to have such information know the actual location of these data centers, and the data centers themselves are secured with a variety of physical controls to prevent unauthorized access.

Secure Services: Each of the services within the AWS cloud is architected to be secure and contains a number of capabilities that restrict unauthorized access or usage without sacrificing the flexibility that customers demand. For more information about the security capabilities of each service in the AWS cloud, consult the Amazon Web Services: Overview of Security Processes whitepaper.

To know more about our web and mobile development service visit http://evincetech.com.
For more information, please contact us with the specifications for your project. You can email our sales team at info@evincetech.com, also you can call us at following numbers.
India: (+91) 44 42170775, (+91) 91766 40375
USA [Toll Free]: 866 220 6565

Amazon’s CloudFront CDN Configuration

What is Amazon CloudFront?

Amazon CloudFront is a web service which can be used to deliver static files like images, css, javascript or streaming content using a global network of edge locations.
If you have customers from Asia which requests your site in the US they get routed to the nearest edge location, so the content is delivered with the best possible performance.

Step 1: Create the CloudFront distribution

Access CloudFront from the Amazon Web Services Management Console here: http://console.aws.amazon.com/cloudfront/home

select “Create Distribution”. CloudFront will now generates then a domain for you to use. In our example it generates: msdfgtfkjel.cloudfront.net

Step 2: Configure Magento

If the test works, the next step is to update your Magento system configuration in order to use Cloudfront. Navigate to System > Configuration > General > Web, and you’ll see an area called Unsecure.

Once you’ve saved this configuration, any requests to msdfgtfkjel.cloudfront.net for images, css or javascript are routed to the newly configured CDN urls. If a request object doesn’t exist on Cloudfront, Cloudfront will go to it’s origin server (you’re regular site) fetch the object and cache it across all of the Cloudfront server. Magento Ecommerce Development India

 

To know more about our web and mobile development service visit http://evincetech.com.
For more information, please contact us with the specifications for your project. You can email our sales team at info@evincetech.com, also you can call us at following numbers.
India: (+91) 44 42170775, (+91) 91766 40375
USA [Toll Free]: 866 220 6565