treasure-data / serverengine

A framework to implement robust multiprocess servers like Unicorn
Apache License 2.0
759 stars 86 forks source link

Removing MultiProcessServer and MultiThreadServer #64

Open frsyuki opened 8 years ago

frsyuki commented 8 years ago

Supporting Windows became one of the goals of ServerEngine since #50. But because fork system call is not available on Windows, worker_type: process doesn't work. worker_type: spawn works but it has very different API set. Therefore, applications need to have quite different code for Linux and Windows.

It is also hard to maintain to keep MultiProcessServer and MultiSpawnServer behave consistently.

Idea here is to give up support of worker_type: process and thread so that any developers can write a single code to support both of Linux and Windows. And make ServerEngine library much smaller.