Nice, thank you Endre.

I guess knowing that the project will stay under active development after 
1.0.0 is enough to choose it over spray, once the api is (roughly) stable 
with 1.0.0. 
I think that for most people it's important to know that the project will 
be supported and the current limitations will be gradually removed. I 
personally see less "danger" in using akka stream/http as experimental 
modules compared to something like persistence (back then) because -correct 
me if I'm wrong- it's less likely that something unrecoverable that 
completely destroys application data or requires a huge migration could 
happen, i.e. experimenting with data is riskier.
As I said I've been using http/stream in a small component here at my 
startup and I am pretty happy with the results. Some workarounds because of 
missing features are ok, as long as the job is done. I already "migrated" 
some of those workarounds to production code during the MX-RCX phases (e.g. 
I had written my own custom "SynchronousFileSource" before using the 
current one). Using an incomplete/changing api can be worked around, slow 
(1 order of magnitude) internals cannot, that's why it's very important to 
know that performance improvement is a priority. 

If the optimization work is supposed to show its first results in a matter 
of months (not year+), I could choose to use the new api in a more 
important component because I like it (a lot) and see a lot of potential 
for future extensions.


Cheers 
G


On Thursday, 28 May 2015 11:56:10 UTC+2, drewhk wrote:
>
>
>
> On Wed, May 27, 2015 at 10:45 PM, Giovanni Alberto Caporaletti <
> para...@gmail.com <javascript:>> wrote:
>
>> I'm already using http/streams in a minor component, but since you're 
>> talking about this: do you have a rough idea of when the performance 
>> improvement work will start? Of course I'm not talking about the exact day 
>> but it would be very useful to know if we can expect something by the end 
>> of the year, more or less. I mean, if I had a 75% chance to have 50% the 
>> performance of spray by the end of the year, I'd start using akka-http 
>> right away for my project... it's an investment ;)
>>
>
> I think it should start soon, since we are mostly happy with the API. 
> Also, since M5 the DSL layer, the representation layer and the 
> implementation layer are highly decoupled, so we can much more easily hack 
> around with the internals than before.
>
> I think two main architectural areas are to be covered:
>  - Dynamic streams usage: the current DSL is very rigid as in the layout 
> of the streams are mostly static after being materialized. We need to solve 
> this in a way that is not a collection of ad-hoc hacks and has similar 
> safety properties than the most common stream stages. 
>  - Graph interpreter support: this will allow us to expose much richer 
> APIs than the current FlexiMerge/FlexiRoute and unify it with the 
> PushPullStage infrastructure. It will allso allow users to demarcate 
> regions of a graph they want to map to an actor. I.e. you will be able to 
> execute a complex graph/flow inside one actor instead one actor for each 
> stage. I believe this will also improve performance.
>
> Performance optimizations should not interfere with the above goals, 
> therefore we are not jumping right into them, but we are very eager!
>
> -Endre
>
>
>> thanks
>> G
>>
>> On Wednesday, 27 May 2015 13:49:10 UTC+2, drewhk wrote:
>>>
>>> Hi,
>>>
>>> At the current point the aim of streams 1.0 was to reach a desired 
>>> functionality level. Basically there is zero performance work done at this 
>>> point. We will improve performance in later versions though. 
>>>
>>> We basically refactored streams API in roughly every second release, so 
>>> we are currently happy that the current API looks usable and most of the 
>>> bugs are ironed out. 
>>>
>>> -Endre
>>>
>>> On Wed, May 27, 2015 at 1:44 PM, zergood <zergoo...@gmail.com> wrote:
>>>
>>>> I've done little benchmarks to compare spray and akka-http performance. 
>>>> I use default jvm and akka settings. So you can see that there is 
>>>> an significant performance difference between it.
>>>>
>>>> code:
>>>> spray https://gist.github.com/zergood/18bae0adc2e774c31233. 
>>>> akka-http https://gist.github.com/zergood/53977efd500985a34ea1.
>>>>
>>>> versions:
>>>> spray 1.3.3 
>>>> akka-http 1.0-RC3
>>>> scala 2.11.6
>>>> java 1.8
>>>>
>>>> wrk output for spray:
>>>> Running 1m test @ 
>>>> http://127.0.0.1:8080/dictionaries/hello/suggestions?ngr=hond
>>>>   30 threads and 64 connections
>>>>   Thread Stats   Avg      Stdev     Max   +/- Stdev
>>>>     Latency     2.14ms    9.82ms  78.22ms   98.22%
>>>>     Req/Sec     2.55k   609.68     4.22k    78.12%
>>>>   4322357 requests in 1.00m, 614.20MB read
>>>> Requests/sec:  72044.97
>>>> Transfer/sec:     10.24MB
>>>>
>>>> wrk output for akka-http:
>>>> Running 1m test @ 
>>>> http://127.0.0.1:3535/dictionaries/hello/suggestions?ngr=hond
>>>>   30 threads and 64 connections
>>>>   Thread Stats   Avg      Stdev     Max   +/- Stdev
>>>>     Latency     5.39ms    6.82ms 108.07ms   92.80%
>>>>     Req/Sec   454.43    126.73   679.00     77.77%
>>>>   811836 requests in 1.00m, 115.36MB read
>>>> Requests/sec:  13531.62
>>>> Transfer/sec:      1.92MB
>>>>
>>>> Is there any akka-http config options to increase performance to the 
>>>> same level as spray?
>>>>
>>>> -- 
>>>> >>>>>>>>>> Read the docs: http://akka.io/docs/
>>>> >>>>>>>>>> Check the FAQ: 
>>>> http://doc.akka.io/docs/akka/current/additional/faq.html
>>>> >>>>>>>>>> Search the archives: 
>>>> https://groups.google.com/group/akka-user
>>>> --- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Akka User List" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to akka-user+...@googlegroups.com.
>>>> To post to this group, send email to akka...@googlegroups.com.
>>>> Visit this group at http://groups.google.com/group/akka-user.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>  -- 
>> >>>>>>>>>> Read the docs: http://akka.io/docs/
>> >>>>>>>>>> Check the FAQ: 
>> http://doc.akka.io/docs/akka/current/additional/faq.html
>> >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "Akka User List" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to akka-user+...@googlegroups.com <javascript:>.
>> To post to this group, send email to akka...@googlegroups.com 
>> <javascript:>.
>> Visit this group at http://groups.google.com/group/akka-user.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
>>>>>>>>>>      Read the docs: http://akka.io/docs/
>>>>>>>>>>      Check the FAQ: 
>>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>>      Search the archives: https://groups.google.com/group/akka-user
--- 
You received this message because you are subscribed to the Google Groups "Akka 
User List" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to akka-user+unsubscr...@googlegroups.com.
To post to this group, send email to akka-user@googlegroups.com.
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to