arespr
b89415d9b2
knownmethods optimizations
2017-03-02 03:10:00 +01:00
Pavel Krymets
d3694f085a
Add IHttpParser interface ( #1414 )
2017-03-01 11:55:36 -08:00
Krzysztof Cwalina
c56de066d3
Optimized parsing GET verb and version ( #1399 )
...
* Optimized parsing GET verb
* optimized http version parsing
* Added microbenchmarks for GetKnownMethod and GetKnownVersion
2017-02-28 17:02:52 -08:00
Stephen Halter
fde0f6b2fc
Add an option to Kestrel to disable threadpool dispatching
2017-02-28 10:14:58 -08:00
David Fowler
5692f51bf7
Revert "Revert "Use Spans to parse the start line and headers ( #1394 )""
...
This reverts commit 19c3107deb .
2017-02-24 10:22:05 -08:00
David Fowler
19c3107deb
Revert "Use Spans to parse the start line and headers ( #1394 )"
...
This reverts commit 8140b8cdfe .
2017-02-24 10:03:32 -08:00
David Fowler
8140b8cdfe
Use Spans to parse the start line and headers ( #1394 )
...
* Use Spans to parse the start line and headers
- Use `Span<byte>` to parse the start line and headers
2017-02-23 23:02:29 -08:00
David Fowler
ba549502e1
Use the IThreadPool as the ReaderScheduler ( #1372 )
...
- This is what socket input did, also using
ThreadPool.QueueUserWorkItem is better than Task.Run for this
scenario and avoids a bunch of overhead.
2017-02-21 21:09:23 -08:00
Pavel Krymets
824ef2c937
Input Pipeline migration ( #1277 )
2017-02-17 15:38:13 -08:00
Stephen Halter
5124adf450
Better report Kestrel crashing errors
2017-02-07 00:26:00 -08:00
Ben Adams
ecca980c91
Implement IHeaderDictionary.ContentLength
2017-01-24 14:55:48 -08:00
Stephen Halter
f32058c5c3
Warn instead of throw when ignoring IServerAddressesFeature
...
- Throwing could be too much when IServerAddressesFeature URLs come from VS
- Listen on 127.0.0.1:5000 by default
https://github.com/aspnet/Hosting/issues/917
2017-01-19 11:36:19 -08:00
Stephen Halter
c4762cdfd5
Better handle OnHeartbeat in 32-bit environments
...
- Prevent potential overflow when casting a long to an IntPtr
2017-01-17 16:57:52 -08:00
Cesar Blum Silveira
6d7ddc45ef
Fix deadlock in SocketOutput ( #1278 ).
2017-01-06 20:33:35 -08:00
Stephen Halter
2351c1b558
Create a direct way to configure Kestrel endpoints
...
- Replace endpoint configuration via .UseUrls() or --server.urls with Listen*
methods on KestrelSerrverOptions.
- Replace IConnectionFilter with IConnectionAdapter which no longer exposes
ServerAddress via a context.
- Simplify libuv Listener classes
- Support systemd socket activation
- Add docker-based test for systemd socket activation to be run on Travis
2017-01-06 17:37:58 -08:00
Cesar Blum Silveira
b41c4078bd
Abort connections not closed during shutdown ( #1112 ).
2016-12-20 14:44:34 -08:00
Pavel Krymets
8b44e8e382
Prevent closure allocations in OnHeartbeat ( #1261 )
2016-12-16 14:42:30 -08:00
Ben Adams
2eba4017c1
MemoryPoolIterator feedback
2016-11-21 22:48:58 +00:00
Ben Adams
ef5ad3deea
defaullt(MemoryPoolIterator) test coverage
2016-11-21 22:48:58 +00:00
Ben Adams
2011a27bde
Use ternary op rather than lazy and
2016-11-21 22:48:57 +00:00
Ben Adams
5041d6c291
wasLastBlock adjustments
2016-11-21 22:48:57 +00:00
Ben Adams
7ab4442392
Feedback + Cleanup
2016-11-21 22:48:57 +00:00
Ben Adams
4cdcca212e
Don't inline slow paths
2016-11-21 22:48:57 +00:00
Ben Adams
12e2f30577
MemoryPoolIterator byref structs
2016-11-21 22:48:57 +00:00
Ben Adams
53f361160e
MemoryPoolIterator fast paths
2016-11-21 22:48:57 +00:00
Ben Adams
8bcbfb9971
Only LocateFirstFoundByte once
2016-11-21 22:48:57 +00:00
Ben Adams
28a21fa7a9
Move vectors closer to use
2016-11-21 22:48:57 +00:00
Ben Adams
00a63537cf
And=> xor, powerOfTwoToHighByte to const
2016-11-21 22:48:57 +00:00
Ben Adams
97d4406614
Use Vector<byte>.ctor workaround
2016-11-21 22:48:57 +00:00
Ben Adams
972d978d11
Swap for vector loop unroll detection
2016-11-21 22:48:57 +00:00
Ben Adams
9eb01d1c57
Reduce Vector register pressure by not overlapping
2016-11-21 22:48:57 +00:00
Ben Adams
4f7977d440
Use PowerOfTwoToHighByte for FindFirstEqualByte
2016-11-21 22:48:57 +00:00
Stephen Halter
f1d0fafaa4
Better filter clients connecting to Kestrel's dispatch pipes
2016-11-11 14:57:17 -08:00
Stephen Halter
e780ad9516
Ensure clients connecting to Kestrel's dispatch pipe are listeners
2016-11-09 14:26:47 -08:00
Stephen Halter
0d559468f1
Make connection reset logs less scary
...
- Particularly between requests, connection resets aren't that abnormal.
2016-11-04 21:36:51 -07:00
Stephen Halter
d475d41f71
Fix boundary cases in MemoryPoolIterator.(Try)PeekLong()
...
- Fix edge case where the iterator is at the very end of a block.
- Fix edge case where one bits where improperly filled in on a right shift.
- Don't use -1 to represent failure. Use bool and an out parameter instead.
2016-10-28 14:51:47 -07:00
Cesar Blum Silveira
f8813a600d
Handle response content length mismatches ( #175 ).
2016-10-11 13:25:22 -07:00
Ben Adams
adc3e63ecc
Improve callstack for LoggingThreadPool
2016-10-08 05:14:00 +01:00
Kristian Hellang
03f8a7a217
Use HeaderUtilities.FormatDate in DateHeaderValueManager ( #1132 )
2016-10-06 11:56:49 -07:00
Cesar Blum Silveira
a2439105ae
Refactor request line validation and error reporting ( #1116 ).
2016-10-03 16:54:51 -07:00
Ben Adams
e7e6b896ba
Don't emit TE header or body for non-body responses
2016-10-03 15:54:14 -07:00
Cesar Blum Silveira
e8fa40235b
Remove unused variable in MemoryPoolIterator.Seek() ( #1137 ).
2016-10-03 14:22:10 -07:00
Mikael Mengistu
12adc7de9d
Refactored to use the fields from the HttpMethods class
...
* Reacting to PR comments
2016-09-29 12:19:26 -07:00
Stephen Halter
63509b9e10
Make FrameRequestStream.CopyToAsync(...) copyless
...
- Add tests for when the CopyToAsync destinationStream throws.
- Add test to verify the destination stream sees the same array written to by
the producer.
2016-09-20 11:54:58 -07:00
Cesar Blum Silveira
1a273f5a34
Improve keep-alive timeout.
...
- Track time more accurately
- Control timeout in Connection instead of Frame
2016-09-14 20:57:16 -07:00
Pavel Krymets
c777a9efea
Use TaskCache class from Microsoft.Extensions.TaskCache.Sources ( #1089 )
...
Instead of Task.FromResult(0)
2016-09-09 15:57:33 -07:00
Cesar Blum Silveira
f2085b1968
Add keep-alive timeout ( #464 ).
2016-09-06 12:48:47 -07:00
David Fowler
6795ca2f78
Make the char array for utf8 decoding smaller
2016-08-31 18:54:15 -07:00
Stephen Halter
acfcafb6e1
Ensure MockLibuv.OnPostTask doesn't complete too early
2016-08-29 20:53:00 -07:00
Stephen Halter
0742d113be
Make all calls to ThreadPool.QueueUserWorkItem through IThreadPool
...
- This allows SocketOutputTests to cause QUWI to exec synchronously
- To avoid allocations, the logger can't be captured making it "unsafe"
2016-08-29 20:52:47 -07:00