Net-net---servlet containers do presuppose a certain threading model, but they
can use threads efficiently as Diego pointed out. Lift aggressively uses these
newer features.
Developing our own HTTP layer is certainly a path we can take, but is a pretty
large distraction from developing the rest of the framework on top of a variety
of proven HTTP layers, which is what servlets provide. Reusing another one, like
netty, is a potential option, but would require some work. There was work put
towards this, including by StackMob, a company that used Lift and was acquired
by eBay a few years ago, but it was never merged into the mainline and I believe
was never fully completed.
A customary reminder that there are no Lift developers who are paid to work full-
time on Lift, so we have to more aggressively reuse code in cases where writing
our own doesn't meaningfully contribute to the framework's overall goals and feel.
None of us has considered it a priority to not use servlets (including those of us who
use Lift in production and see relatively few serious issues from doing so), but I
don't know that we'd be unreceptive to work that would seek to make that more
adaptable, if it were comprehensive across Lift's feature set.
Thanks,
Antonio