Commit graph

64 commits

Author SHA1 Message Date
Jimmy Zelinskie 0ecd126ae8 lint: Http -> HTTP 2015-03-23 19:57:45 -04:00
Justin Li 87c68f1973 2015 2015-01-01 12:02:25 -05:00
Jimmy Zelinskie ddd10d9732 Begin refactor to better encapsulate configuration
This also updates the example_config.json which did not previously work.
Config.Config is now composed of embedded structs of other configs that
can later be used to clearly have a separation of concerns.
2014-11-01 20:12:40 -04:00
Paul Saab 3f5b6b55b0 Limit number of concurrent connections
Go's net/http library has no limits in place for number of concurrent
requests currently being processed.  This can result in an enormous
number of goroutines being created and the read/write buffer pools
growing unbounded resulting in OOM situations.
2014-09-25 10:58:07 -07:00
Paul Saab ad9034da6d Reduce contention on the torrent map
We see the torrent map have quite a bit of contention.  Shard the map by
a configurable number of shards to reduce the times we may contend on
the lock.
2014-09-24 10:23:16 -07:00
Jimmy Zelinskie b910fdabf5 Organize peers by subnet.
This commit restructures PeerMaps to be a map from Subnet to
PeerID to Peer. This reduces the complexity require to gather peers from
the same subnet.
2014-09-23 23:00:50 -04:00
Justin Li 976a983aa7 go fmt [ci skip] 2014-09-03 10:18:26 -04:00
Cooper Lees 67df033c7f Add configurable HTTP read and write timeouts 2014-09-02 22:24:15 -07:00
Cooper Lees 26de6d2e9c Respect a clients AF Optional Support - config driven 2014-08-21 07:11:35 -07:00
Jimmy Zelinskie ffb3c57181 move whitelist into cfg 2014-07-25 16:58:26 -04:00
Justin Li c1c9ee07a9 Listen on all interfaces by default
[ci skip]
2014-07-24 17:08:08 -04:00
Justin Li fc2d15cdc0 Change private config key to private_tracker 2014-07-23 18:48:01 -04:00
Justin Li 88d68a99a2 Clean up stats configuration 2014-07-23 17:25:01 -04:00
Justin Li cf619aa50f Add memory statistics 2014-07-23 17:08:06 -04:00
Justin Li d47cf7d4bc Move stats buffer size to the regular config 2014-07-23 16:14:50 -04:00
Justin Li 76c68a53b5 Add RealIPHeader configuration, and move network conf to its own struct 2014-07-23 14:00:17 -04:00
Justin Li 8369bbbcd8 Allow configuring if a peer may have 2 IPs 2014-07-23 13:36:31 -04:00
Justin Li 14843b9e89 Add AllowIPSpoofing configuration 2014-07-23 13:08:57 -04:00
Jimmy Zelinskie 7faa1b08ac moved together bools 2014-07-21 03:52:56 -04:00
Jimmy Zelinskie 07081e1027 Add support for preferring peers in the same subnet 2014-07-17 04:17:43 -04:00
Justin Li cd6204f13d Purge peers that have not announced for twice the announce interval 2014-07-16 19:38:51 -04:00
Jimmy Zelinskie d2ba9fb9f7 repurpose drivers from mock to no-op and memory 2014-07-15 00:22:04 -04:00
Jimmy Zelinskie b321d1f0fa update config docs [ci-skip] 2014-07-14 23:13:35 -04:00
Jimmy Zelinskie 6a5144fb4e Adds an error for missing driver params 2014-07-14 20:36:49 -04:00
Jimmy Zelinskie 3cc4679454 default to addr 127.0.0.1:6881 2014-07-09 21:26:44 -04:00
Justin Li e08f745f6c Happy uber-belated new year! 2014-07-06 17:56:54 -04:00
Jimmy Zelinskie ff5dc0920d DriverConfig.Params enables generic db parameters 2014-07-03 17:37:13 -04:00
Jimmy Zelinskie 6d5290d85e transition to httprouter 2014-07-01 21:40:29 -04:00
Jimmy Zelinskie 9cb5b82dc7 log->glog; more bencode fixes 2014-06-30 23:21:08 -04:00
Jimmy Zelinskie 834e584f2d fix null ptrs, misuse of bencode 2014-06-30 14:59:31 -04:00
Jimmy Zelinskie caba155b5d consistent logging 2014-06-26 17:10:39 -04:00
Jimmy Zelinskie 42693e2a3b docs, signatures; glog for main; config.New() 2014-06-24 03:59:30 -04:00
Jimmy Zelinskie 3bfb3074b4 overhaul everything 2014-06-23 22:47:43 -04:00
Jimmy Zelinskie 90491dc386 mockConfig.Addr :80 -> :34000 2014-05-08 06:39:39 -04:00
Jimmy Zelinskie 4a8d756f5a announce type; renames; docs 2014-05-07 05:19:36 -04:00
Jimmy Zelinskie b32eaebcd6 first pass with linter 2014-05-01 00:30:46 -04:00
Jimmy Zelinskie 76f03e209f rm driver deps 2013-12-02 05:00:28 -05:00
Justin Li 986675cc4d Fix stats test and stop spamming people 2013-11-30 23:13:30 -05:00
Jimmy Zelinskie 6549f49e26 go fmt [ci skip] 2013-11-24 00:49:20 -05:00
Jimmy Zelinskie 9382ac482e removed all references to "transaction" 2013-11-23 23:48:38 -05:00
Justin Li 080a24c7be Set up initial outbound synchronization structure 2013-09-06 18:39:14 -04:00
Jimmy Zelinskie 24eff112f3 gofmt, style improvements 2013-08-31 15:06:42 -04:00
cpb8010 999a268ca8 The rest of the files needed to pass Redis tests 2013-08-31 01:17:12 -04:00
Jimmy Zelinskie a2527aa4e2 generic test config 2013-08-29 00:47:37 -04:00
Jimmy Zelinskie 6e7d6f1a31 fix travis tests 2013-08-29 00:24:31 -04:00
Jimmy Zelinskie ecbedf4b89 stats test, add/remove torrent handlers, init batter driver 2013-08-28 23:44:45 -04:00
Jimmy Zelinskie 107ec1dd15 more work towards new architecture 2013-08-26 14:38:45 -04:00
Jimmy Zelinskie 4226ecc59d docs updated 2013-08-24 00:24:42 -04:00
Jimmy Zelinskie d3f3c81c61 initial architecture overhaul 2013-08-23 15:39:42 -04:00
Jimmy Zelinskie dcc2621ec3 initial work on publish 2013-08-04 23:01:25 -04:00