Comments (7)
Comment by 2beaucoup
Monday Sep 05, 2016 at 13:03 GMT
Would it be safe to share the handlers between PoolFlow
and the subflows? The handlers could then be created by the PoolFlow
and then be injected into the subflows and could directly update the state without an additional state channel.
from akka-http.
Comment by jrudolph
Monday Sep 05, 2016 at 13:59 GMT
You mean to rely on all of the stages being run in the same context so that it would be safe to manipulate state of another stage? I don't think that's a good idea ;) We should try to avoid tricks.
The PoolSlot seems to me like a useful abstraction over a connection that automatically reconnects if the connection gets closed + some meta messages that transport (or manipulate) the current state.
The PoolConductor on top of that tries to keep track of the state of its slots and schedules requests in a best-effort way.
That seems to me like a clean separation.
from akka-http.
Comment by 2beaucoup
Monday Sep 05, 2016 at 14:12 GMT
You mean to rely on all of the stages being run in the same context so that it would be safe to manipulate state of another stage? I don't think that's a good idea ;) We should try to avoid tricks.
Agreed. SlotCommand
s in and SlotEvent
s out it is then.
The PoolSlot seems to me like a useful abstraction over a connection that automatically reconnects if the connection gets closed + some meta messages that transport (or manipulate) the current state.
But the (re-)connection is triggered by the conductor, no?
from akka-http.
Comment by jrudolph
Monday Sep 05, 2016 at 14:20 GMT
But the (re-)connection is triggered by the conductor, no?
Right now, yes, but we could (and should) change it if it simplifies the protocol.
from akka-http.
Comment by 2beaucoup
Monday Sep 05, 2016 at 14:23 GMT
But only the conductor does really know if a (re-)connection is actually necessary.
from akka-http.
Comment by jrudolph
Monday Sep 05, 2016 at 14:33 GMT
In the simplest case, the slot opens a connection if it has request(s) pending (or if was triggered by ConnectEagerlyCommand
).
from akka-http.
Duplicate of #20
from akka-http.
Related Issues (20)
- failed: TimeoutDirectivesExamplesSpec - should be configurable in routing layer despite infinite initial value of request-timeout
- fail: Http2ServerSpec - The Http/2 server implementation should support stream for request entity data
- User-Agent fails to parse Facebook in App string HOT 4
- host-connection-pool.min-connections property with positive value HOT 1
- Internal server error triggered by “Accept-Charset” header with unexpected value HOT 4
- Not possible to load project in IntelliJ 2023.2.1 HOT 1
- Duplicated 100 responses if there is an exception thrown by the unmarshaller HOT 1
- Several HTTP/2 client settings are never used anywhere
- failed: RouteDirectivesSpec -> should allow easy handling of futured ToResponseMarshallers
- Cannot Unmarshall Seq[String] Outside HOT 1
- Release 10.6.0-M1
- Release 10.6.0-M2
- CVE-2023-44487 HOT 3
- Release 10.5.3
- Release 10.6.0
- Failed: Http2ClientSpec should send RST_STREAM if entity stream is canceled HOT 2
- Failed: Http2ServerSpec send RST_STREAM if entity stream is canceled
- Remove dependency on `sbt-dependency-graph` HOT 1
- Release 10.6.1
- Failed: Native image tests HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from akka-http.