AWS Elastic Load Balancing (ELB) vs PhantomJS: What are the differences?
What is AWS Elastic Load Balancing (ELB)? Automatically distribute your incoming application traffic across multiple Amazon EC2 instances. With Elastic Load Balancing, you can add and remove EC2 instances as your needs change without disrupting the overall flow of information. If one EC2 instance fails, Elastic Load Balancing automatically reroutes the traffic to the remaining running EC2 instances. If the failed EC2 instance is restored, Elastic Load Balancing restores the traffic to that instance. Elastic Load Balancing offers clients a single point of contact, and it can also serve as the first line of defense against attacks on your network. You can offload the work of encryption and decryption to Elastic Load Balancing, so your servers can focus on their main task.
AWS Elastic Load Balancing (ELB) belongs to "Load Balancer / Reverse Proxy" category of the tech stack, while PhantomJS can be primarily classified under "Headless Browsers".
Some of the features offered by AWS Elastic Load Balancing (ELB) are:
- Distribution of requests to Amazon EC2 instances (servers) in multiple Availability Zones so that the risk of overloading one single instance is minimized. And if an entire Availability Zone goes offline, Elastic Load Balancing routes traffic to instances in other Availability Zones.
- Continuous monitoring of the health of Amazon EC2 instances registered with the load balancer so that requests are sent only to the healthy instances. If an instance becomes unhealthy, Elastic Load Balancing stops sending traffic to that instance and spreads the load across the remaining healthy instances.
- Support for end-to-end traffic encryption on those networks that use secure (HTTPS/SSL) connections.
On the other hand, PhantomJS provides the following key features:
- Multiplatform, available on major operating systems: Windows, Mac OS X, Linux, and other Unices.
- Pure headless (no X11) on Linux, ideal for continuous integration systems. Also runs on Amazon EC2, Heroku, and Iron.io.
"Easy" is the top reason why over 46 developers like AWS Elastic Load Balancing (ELB), while over 12 developers mention "Scriptable web browser" as the leading cause for choosing PhantomJS.
PhantomJS is an open source tool with 26.9K GitHub stars and 5.7K GitHub forks. Here's a link to PhantomJS's open source repository on GitHub.
Coursera, 9GAG, and Quora are some of the popular companies that use AWS Elastic Load Balancing (ELB), whereas PhantomJS is used by Key Location, Tailor Brands, and NationBuilder. AWS Elastic Load Balancing (ELB) has a broader approval, being mentioned in 723 company stacks & 314 developers stacks; compared to PhantomJS, which is listed in 77 company stacks and 47 developer stacks.
What is AWS Elastic Load Balancing (ELB)?
What is PhantomJS?
Need advice about which tool to choose?Ask the StackShare community!
What are the cons of using AWS Elastic Load Balancing (ELB)?
What are the cons of using PhantomJS?
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
I wouldn't recommend it today, because PhantomJS is a basically dead project, and as a result, so is CasperJS. I expect we'll migrate to something else. We haven't in large part because 95% of our new tests are written with a simple Node.js-based unit testing framework we use that run 35K lines of unit tests covering most of our JS codebase in 3.6 seconds. And for the things where we want an integration test, CasperJS does work, and I think there's a good chance that waiting another year or two will result in our being able to switch to a much better option than what we'd get if we migrated now.
I use an Application Load Balancer to balance the load to the EC2 clusters of nightly.zerotoherojs.com and dojo.zerotoherojs.com.
Addditionally, ELB protects my cluster against DDOS attacks: So it is multi-birds with one stone.
We run PhantomJS as part of the CircleCI testing, comparing against other branches to ensure changes are limited to their intended scope.
We're progressively migrating from classic ELB to newer ALB for ssl offloading and NLB for internal load balancing.
AWS ELB is used to load balance various web and application services across multiple EC2 instances.
- Application type
- SSL free
- forwarding by rules.
- multiple target groups with only one ALB
For balancing the presentation tier, and for SSL offloading (which is great for performance.)
Headless browsing, headless chrome is good too, this is not supported anymore.