Hacker News new | past | comments | ask | show | jobs | submit login
Nginx Inc. raises $10M in Series B round (nginx.com)
126 points by shad42 on Oct 15, 2013 | hide | past | favorite | 45 comments



I've been using nginx for a very long time, but I am getting a bit nervous about it. As an example, the nginx Plus feature of "Application health checks" has me concerned. This is the feature that performs an HTTP request on a backend server to determine if it is healthy.

That's such a simple and necessary feature of any reverse proxy that it should obviously be included in the free version.

So, are they going to avoid ever implementing it in the free version? Would they turn away patches to add that functionality? I know there was an open source patch that never made it in, but I don't know why.

And what about staging/dev environments? Do you really have to pay full price to get basic features for internal testing servers?


Just curious, do other reverse proxies have this feature? Why aren't you using them?

To me this sounds like exactly the sort of feature that belongs in an enterprise product. So simple it could be implemented with a shell script in an hour or two by any competent sysadmin, and just out of being core functionality.

The idea would be that by buying the enterprise product you save yourself the time/money of being/hiring that competent sysadmin. How is that not reasonable?


Yes, pretty much every reverse proxy supports this. Most other software sucks in much bigger ways. And no this could not be done with a shell script.


Not easily, but this can be implemented by having NGINX proxy to Haproxy and have Haproxy do the health checks.

Scales well enough.


this is getting ridiculous, first mongo.db next nginx.

HEADLINES FROM NEXT WEEK:

cat raises $750M at valuation of $25B

The venerable gnu shell program 'cat', which is an integral part of 70 million developers' toolchains and helps power shell scripts on 70% of the world's Internet servers, has completed raising a seed round of $750M at a valuation of $25B.

"We could have raised more", said Richard Stallman, "but by only parting with 3.3% we are leaving ourselves room to grow. More and more people are starting to use Gnu/GNU utilities, and our eventual market base is 7 billion people. We have no plans to monetize."


How is that ridiculous? Why can't nginx or MongoDB monetize its strength?

10gen was a startup and MongoDB was built to make money.

You can keep a project "open source" while offering enterprise level of support. Look at Puppet, Chef and now Ansible.

The world needs business. Nginx is mature and actually deserve to run as a business. The developers are already consultant for a long time; they just want to monetize Nginx publicly, as a startup.

Are you afraid Nginx will become the next Microsoft Windows Server? I can't predict future but with 100% of faith I say nginx will be fine in the next several years.

I don't necessarily think free software == win.


If I'm a small business that can't afford "enterprise" pricing and nginx starts stagnating because all of the effort has gone to nginx-plus, what then?


Then you realize that they don't owe you anything.


Well, in that case, you are okay with the last version of free nginx for several more years. If you use Ubuntu server for example, it ships with outdated version. A lot of companies use that (for stability and security reason).

And I predict half of the developers will protest and negotiate with Nginx Inc. to get a fork version.

Don't panic. I think it is solid enough for few years. What if half of the world is destroyed tomorrow? Well, that's a disaster.


Then you choose another open source offering or fork nginx and start implementing the features it's missing.


And that totally sucks.


Mongo and nginx are both fairly complex tools. They stand to make lots of money from large organizations that want to optimize their back-end.

If generic webcorp X is paying $1 million per year in server costs, and you can reduce those costs by 10% for $100,000 with some new feature... webcorp X will pay you for that feature.


Please do not put nginx and crap like mongodb in the same basket. nginx won its user-base solely due to brilliant engineering, attention to details and superior code quality, while mongodb "success" is based on using deceptive sales techniques and media manipulations.

There are hundreds of blog posts that describe in great details all the pitfalls and bad design withing mongodb, along with their cheating with benchmarks and calling "transactions" non-atomic writes, etc. It is no use to describe all the details here. Use Google search.)


What were the specific cases of Mongodb doing 'media manipulations', dschiptsov? I am curious to read up on the history.


In short, the strategy was to develop a brand instead of code. It is nothing wrong to have a brand when you already have a superior design or innovative technology, not the other way around.

One of such manipulations were so-called benchmarks when in a mode in which the control returns to a caller function before an I/O operation is finished, successfully or not, without any error checking, which has to be done by calling a separate function explicitly. Basically, what did they measured was the performance of writing into a memory buffers.

There was later some nonsense about default mode of operation, and when you really need your data consistent you should turn on a synchronous mode.

The story of table-level write locks is less dramatic.) But the stories of "customer satisfaction", "increased productivity" (never to see an error) "features to jump-start the development" (by ignoring how your data is stored) were all over the site and paid content mills like techcrunch.

In case there are questions about design here is the link: http://hackingdistributed.com/2013/01/29/mongo-ft/

Keep in mind that this very crap is now "valued" at a sum compared to a budget of small country.

In case you don't get it, the design of a fault-tolerant storage engine is a much harder problem. Serious systems, such as Informix at its time, resorted to write data in a chunks they call "pages" on so-called raw-devices (without any buffering by OS or hardware). They had page-level instead of row-level locking, and in case of failure they knew which pages were written and which not, so they could rollback the unfinished transactions. btw, they used the same pages for shared memory operations.

This was a technology IBM brought for a billion dollars back in 2000. Compared to that MongoDB is just a Herbalife or any other scam.


I can see being angry about their marketing tactics, but MongoDB has been around for a while now and it's arguably the best choice for a NoSQL database simply because it's so popular. I wouldn't let the notion of code cleanliness or "proper engineering" get in the way of making a sound business decision for your tech.

Being the most popular database means you've got lots of large companies using it, satisfied with its reliability, and you get plenty of extra features written by 3rd parties when you need them. And web searching will find answers to your problems, when you have them, way better than with a lesser-known database.


There are literally millions of people who are satisfied with "the most popular language for the web" - PHP, but this doesn't magically make it even a good language.

http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-de...

Let's say that MongoDB is PHP of database world.)


I wonder how this impact open source nginx... I guess they will rather keep adding new things to Plus.

Seems less open source friendly business model than Trolltech (Qt), Red Hat, MySQL...


The problem isn't making a commercial business model around open source, but doing so in a way that has the opportunity to achieve the levels of return VCs expect.

IMHO the best returns in open source don't come from early monetization, but from growing a community so much that the open source product's brand value becomes attractive to the largest enterprise-focused service organizations like IBM, Oracle, RedHat, etc. IMHO this is basically the end-game that MongoDB is gunning for.

Charging for a premium product early on when you instead angle for owning a large chunk of major category of software globally like webservers is naïve.

Owning the brand of a major du jour technology keeps big enterprise service orgs top of mind with CIOs and CTOs.


Why? I work at a company with a similar business model, and it's benefited our open source product tremendously.


Just to clarify: Any company which got open source model is awesome.

Just in that case transition may cause that they core product will not be evolving as fast as we would wish. Without digging depth, things like "Advanced load balancing" just in paid plan makes me anxious.


I can't speak for Nginx, but it seems to me their enterprise product is very reliant on their open source product. Their customers will probably users of the opensource product that seek a little extra.

If they would slip up and let another open source software be better than their open source product it would eat in their customer base and eventually cost them money.

This is why this business model is so awesome. It is both excellent for the users, who benefit from having the core contributors be paid and highly motivated to improve and maintain the project, and good for the contributors who are finally able to work on the project they love without the distraction of having to do other work for money.

That's not even mentioning side effects like the fact that paying customers are more likely to give feedback and report bugs/missing features.


"NGINX is now used by 16% of all Web sites"

I wonder how much traffic are generated by this 16%? I would assume the traffic will be more than 16%, probably above 50%.


That's possible. WordPress and of course Yandex.ru use them, I think, almost exclusively (there may be a few edge cases where they need to use something else). That's a pretty sizable chunk of traffic right there.


Well one user is Netflix for their streaming, who have 32% of US traffic...


Would sites behind cloudflare fall into this 16% figure since the headers are cloudflare-nginx? Either way, cf powers a lot of sites.


I wonder if ISP deliver anything through nginx.


I doubt it, because Google doesn't use nginx for anything public facing, and I'm pretty sure Facebook, Amazon, Yahoo, and Microsoft don't either. That already counts for a huge chunk of internet traffic.

Nginx is good for relatively high traffic sites, but not so high traffic that you have entire teams of engineers rolling your own load balancing!


Correction: Facebook does use Nginx. As does Hulu, Zappos, Zynga and Dropbox.

http://venturebeat.com/2012/06/18/nginx-the-web-server-tech-...


Do you happen to know why they don't and what do they use? If they are using Apache, I assume they have a custom version that is highly optimized. http://www.serverwatch.com/article.php/3911511/Google-Speeds...

I guess for all fairness, yeah, let's only count public facing. I think with internal proxy nginx will probably be even higher.


> Do you happen to know why they don't and what do they use?

Google originally used a modified version of Apache (and, as you have linked to, contributed a module to it), but my understanding is the Google Web Server is now so far removed from Apache it bears virtually no resemblance to it.


I wonder if they ever plan on open sourcing parts of their web server.


Recently switched to Apache largely because of Nginx Plus. I do wish them luck with that project though.


What scale are we talking about here, a home server or an enterprise deployment?


Apache 2.4 is no slouch, pinning it as good for home server use only would be ridiculous.


Home servers and hobby projects. So scale is tiny.


Can you provide more details? Is there something wrong with Nginx Plus?


Nothing wrong with it per se, like I said I wish them well, I just feel that their motivation going forward is going to be towards enterprise features.

For example Nginx currently has bad WebDAV support (only a 3rd party plugin that is a version behind). I don't see them doing anything to fix this in the future, and I'm not suggesting that they should, just that Nginx Plus is a signal to me that they aren't going to be serving my needs.


If you are looking for the future of http server stuff look no further than: http://mew.org/~kazu/proj/mighttpd/en/


I don't understand why a minimalistic Haskell server (while neat) is the "future of http server stuff". While I'm glad it puts up similar benchmark numbers to Nginx, what reason is there to switch?

Nginx is plenty stable despite not being written in Haskell.


Yeah but you don't want people knowing you don't have the monads to handle their http requests.


I know that they plan to add dynamically loaded module support in a future release. As long as they don't plan to keep that feature as an Nginx Plus feature then I don't see much to be concerned about.

As it stands right now, a lot of users aren't able to make use of 3rd party modules because of the overhead (recompiling). Once dynamic modules are supported the community should be able to fill in the most desired features.


Taobao's fork supports dynamic module loading with other enhancements. http://tengine.taobao.org/


Nginx Inc without mr. Sysoev is just a support company.)

There were rumors that he had plans to rewrite big parts of the server, so-called nginx2. If this Nginx Plus is what they would do instead, that is pity.

In my humble opinion, while nginx/core is brilliant the module system is over-engineered and too complicated, and there are lot of room for improvements.


He was describing the outlines of Nginx2 just the other week at a conference so it is still happening.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: