Category - Web Development

How to Improve Performance of AWS Java Cloud App? Try ElastiCache

Usually startup projects grow gradually starting as prototypes. The load increase unnoticed, so at one point your server might lay down, because it didn’t manage to handle the number of incoming requests. Fine. We can hide a web application behind an http-server/servers to optimize work with static content. Additionally, we can create several instances of our web application for load balancing and fault tolerance. Some more options to improve performance of AWS Java cloud app is described in my colleague’s article. But what to do if your database is a bottleneck? If you have a lot of information frequently asked, which can be cached in the memory, then it’s worthwhile to try Memcached.

Read More

Comprehensive object enumeration in JavaScript

This cool JS snippet implements enumerations for JS:

function makeEnum(idField, indexField) {
  idField = idField || 'id';
  indexField = indexField || 'index';

  var enumeration = [];

  // Standalone object is useful for Underscore collection method usage,
  // for example:
  // _.keys(MyEnum.dict);
  var dict = {};
  enumeration.dict = dict;

  // This method can be used as a callback of map method:
  // var objects = ids.map(MyEnum.get);
  enumeration.get = function(id) {
    return enumeration[id];
  };

  // Registers a new enumeration item.
  enumeration.register = function(instance) {
    instance[indexField] = enumeration.length;
    enumeration[instance[idField]] = instance;
    dict[instance[idField]] = instance;
    enumeration.push(instance);
    return enumeration;
  };

  // Maps enumeration as dictionary:
  // MyEnum.mapDict(function(value, key) { return ...; });
  //
  // This is a shorthand for the next Underscore expression:
  // _.chain(MyEnum.dict).map(function(value, key) {
  //   return [key, ...];
  // }).object().value();
  enumeration.mapDict = function(iteratee, context) {
    var result = {};
    for (var id in dict) {
      if (dict.hasOwnProperty(id)) {
        result[id] = iteratee.call(context || this, dict[id], id, dict);
      }
    }
    return result;
  };

  return enumeration;
}

Read More

SaaS Application Development Java

Reasons for SaaS:

So you’ve decided your software product needs to be a SaaS application development Java. You’ve no doubt picked SaaS because your customers would like a cloud based application that they can access from the web anywhere they need it. This also implies your customer base has no interest in maintaining an IT staff to maintain software and equipment in-house. They are also interested in the low cost of ownership, on demand scalability, tailored Service Level Agreements, and the fact that “someone else” is worrying about upgrades, feature development, security, and all the other responsibilities that come from in-house development.

SaaS application development Java community ecosystem

SaaS Strengths (courtesy of Rishabh Software)

Read More

High Load Java App Server: Things to consider when building

Focusing on the front end demand is where many developers start scoping a project. This coupled with the backend requirements often point to the most obvious choices for the application architecture. As we’ll see it’s often useful to do a bit more digging and mining before settling on a particular design plan. There are many pitfalls that can be avoided when the proper time and consideration is put in to technology and architecture selection. Some questions worth asking include: “What do we mean by high load?”, “Will we ever need to scale?”, “Are there predetermined hardware and/or operating system requirements?”, “What demands are being placed on the backend?”, “Is code base maintenance a priority?”, “Will the code base ever need to be ported to new platforms?”, “Is this a one off deployment? While your gut may be screaming high load javaapplication server a little preliminary consideration will pay off big time in the long run to validating your decision and/or help you defend a different path.

Read More

Challenges of Amazon MWS API: ISS Art experience

This article is focused on Amazon MWS API and some challenges related to its integration.
If you plan to integrate Amazon MWS into your PHP project, you should think twice whether you need this functionality or not.
In our Symfony project such integration is needed. However, there are a lot of hidden dangers. In the article I will try to give you a heads up how to avoid the pitfalls.

Read More

Deployment of Symfony2 application using Deployer

Deployment of Symfony2 application may be a complex task, depending on the setup and the requirements of your application. On some projects we update the test server at least once a day. And production server about two times a week. Developers spend a lot of time on this routine process.

Let’s take a look at typical steps taken during deployment process:

Read More

WebRTC: Real-time communication

“WebRTC is new front in the long war for an open and unencumbered web.“

Brendan Eich, Mozilla CTO

Today we will talk about WebRTC: how it works and how we can use it. WebRTC is an API project created by the World Wide Web Consortium (W3C). The project supports browser-to-browser applications for voice calling,video chat, and P2P file sharing without the need for both internal and external plugins. We are using WebRTC in one of our current projects. The application that we’ve developed creates rooms with many clients with video/audio chat.

 

75ffad9d2bfa22aff07d8460f477ef8f

 

And what is under the hood?

Read More

How to choose a reliable SEO provider

At the moment Web promotion in search engines became very popular. This method can increase brand awareness and drive traffic to your web application.

And as you know, demand generates supply: a huge number of SEO providers offer their services. But how to choose reliable experts who can help you to achieve the goal: to promote your brand and drive extra users to the website? Let’s deal

Read More