| OpenBSD Multimedia Resources List
Links on this page refer to multimedia resources (podcast, vodcast,
audio recordings, video recordings, photos) related to OpenBSD or
of interest for OpenBSD users.
 
This list is available as chronological
overview, as a tag cloud and
via the sources.
 This list is also available as RSS feed
   
If you know any resources not listed here, or notice any dead links,
please send details to
Edwin Groothuis so that
it can be included or updated.
 Tag: adrian chad
Adrian Chad - What Not To Do When Writing Network Applications
Source: BSDCan - The Technical BSD Conference
 Added: 21 May 2008
 Tags: bsdcan, bsdcan2008, slides, network applications, adrian chad
 PDF file (190 Kb, 73 pages)
 
 What Not To Do When Writing Network ApplicationsThe lessons learnt working with not-so-high-performance network applications
		This talk will look at issues which face the modern
		network application developer, from the point of
		view of poorly-designed examples. This will cover
		internal code structure and dataflow, interaction
		with the TCP stack, IO scheduling in high and low
		latency environments and high-availability
		considerations. In essence, this presentation should
		be seen as a checklist of what not to do when writing
		network applications.
		 
		Plenty of examples of well designed network
		applications exist in the open and closed source
		world today. Unfortunately there are just as many
		examples of fast network applications as there are
		"fast but workload specific"; sometimes failing
		miserably in handling the general case. This may
		be due to explicit design (eg Varnish) but many are
		simply due to the designer not fully appreciating
		the wide variance in "networks" - and their network
		application degrades ungracefully when under duress.
		My aim in this presentation is to touch on a wide
		number of issues which face network application
		programmers - most of which seem not "application
		related" to the newcomer - such as including
		pipelining into network communication, managing a
		balance between accepting new requests and servicing
		existing requests, or providing back-pressure to a
		L4 loadbalancer in case of traffic bursts. Various
		schemes for working with these issues will be
		presented, and hopefully participants will walk
		away with more of an understanding about how the
		network, application and operating systems interact.
		 |  |