Bloggin in the UK RSS 2.0
 Monday, April 20, 2009
First read this nServiceBus overview.

I'm recording my learning so I can refer to it later.

Messaging Concepts

Transport

For messaging to work you need to transport messages from one endpoint to another, once an application has created the message addressed it and put it into a queue it is up to the transport to attempt delivery. MSMQ is the default choice of nServiceBus.

Command Query Separation (CQS)

Wikipedia describes CQS as a pattern where "… every method should either be a command that performs an action, or a query that returns data to the caller, but not both. More formally, methods should return a value only if they are referentially transparent and hence possess no side effects." Udi Dahan's Blog Post on CQS

The Cost of Messaging

Using a messaging approach to building systems offers lots benefits that other approaches don't but you rarely get something for nothing, Ayende's article discusses the cost of messaging.

nServiceBus Concepts

Publish vs Send - Wiki Article

The Distributor


The distributor as it's name suggests distributes work to be done to worker services. This avoids the need for the service that decides what work is to be done from having to contact all workers or have logic that handles balancing the work load.
Worker services inform the distributor how many idle threads they have available and it dispatches the same number of jobs. When a thread completes the distributor is notified so that if any jobs are in the work queue one will be sent.
This means an administrator can monitor the work queue to see if there are enough workers to handle the load.

nService Bus Code Samples Articles

Synchronous Web Service Bridge - Udi Dahan

Pub / Sub Walkthrough - Erik Westermann

Installation and Config

Wiki Article on configuration

Getting started article on Art of Babel - Erik Westermann

Reviews of nServiceBus

Ayende Rahien's Review and his review of the distributor

nService Bus Info on the Web


Mailing List on Yahoo Groups

Udi's FAQ on the nServiceBus Website - Full of programming tips

Case Studies and Scenarios for Usage

Asynchronous High Performance Login Example - Udi Dahan

Monday, April 20, 2009 9:05:59 AM (GMT Standard Time, UTC+00:00)  #    Comments [0] -

 Friday, April 17, 2009
One of the devs in our team here at Wonga came accross this useful tool.

If you find the need to install an SSL cert on your local machine for testing purposes, such is the requirement for testing the WongaAPI, you can download the IIS 6.0 Resource Kit Tools from Microsoft, which contains a tool called SelfSSL.

This is a simple command line utility which will install an ssl cert on localhost.

the tool kit can be downloaded from here:

http://www.microsoft.com/downloads/details.aspx?FamilyID=56FC92EE-A71A-4C73-B628-ADE629C89499&displaylang=en


Friday, April 17, 2009 9:59:57 AM (GMT Standard Time, UTC+00:00)  #    Comments [0] -

 Thursday, April 16, 2009

I found a this great analogy on how MSMQ works

URL : Full MEssage


"MSMQ works similar to how USPS works.

 

You write your letter, write in address (queue format name), attach stamp and put it into your mail box with raised red flag (send the message using MSMQ).

Your mail (message) then sits in this mail box near your house (outgoing queue). Note at that point you can get address wrong on your letter (bad format name), however that won’t stop you from putting letter into mail box (sending it).

OK, so later one mail man comes (network connection is established). Mail man picks your mail (MSMQ connects to the destination server) and if everything is OK it goes through the system (network) and ends up in receiving mail box (destination queue). Recipient (your application on the server) don’t have to be near (don’t have to be running) this mail box (queue) for mail to arrive.

At some point somebody (your application) opens mail box (application on the server reads from the destination queue) and gets mail.

What could go wrong here? Well, you can get address wrong. Mail man can never come (no network connection on device). Destination might be inaccessible, say avalanche blocked the roads (server is down or no network path to it) or there’s civil disturbance and it’s blocked out by the police (firewall or security configuration prevents connection to the server).

Another thing: I’m not absolutely sure, but you might have to install web server and configure MSMQ ISAPI DLL for SRMP to work."

Thursday, April 16, 2009 8:07:06 AM (GMT Standard Time, UTC+00:00)  #    Comments [1] -

 Friday, February 20, 2009
For your enjoyment a ringtone of the Southern Service to Ashford International, oh the automated announcement goodness.
Warning this may confuse your fellow passengers unless you happen to be on that train to Ashford.

AshforInternationalSpeed.m4r (192.71 KB)
Friday, February 20, 2009 3:34:10 PM (GMT Standard Time, UTC+00:00)  #    Comments [0] -

Before you let Steve Job's and his posse firmly place their arm up your back passage here's a few things you should know.

Firstly Apple have effectively fitted the iPhone with a chastity belt, if you want to have your wicked way with it you will have to Jailbreak it first, if you don't the following is a list of things you will have to put up with.

1 - You'll have to pay for custom ringtones and you can only choose from the songs / tones available on iTunes.

2 - If you want to make use of App Store and download apps (even free ones) you will have to setup an iTunes account, you will need a credit / debit card and have at least £1.50 in your account.

3 - If you want to load your own mp3's (not purchased via iTunes) you will still have to install iTunes to do this.

I have only had the phone a short while so  there may be more gotcha's to come.

Update:
It turns out iTunes is lying about No 1. you can use itunes to convert mp3 / Wav files in to AAC then rename the extension to M4R, reimport the file and it will appear as a ringtone.
+1 for it being possible -1 for lying to your customers Apple

Friday, February 20, 2009 1:55:11 PM (GMT Standard Time, UTC+00:00)  #    Comments [0] -

 Sunday, February 08, 2009




I bought one of these a couple of weeks ago, to use on my commute to london.

The Good:
  • Uber convienient have BB on the move
  • Signal on the train is good without to much drop out.
  • You can plug in a 4gb mcro sd card and turn it into a memory stick
  • In a good signal area the downloads are fast 170kbps
The Bad:

This is a relatively expensive way to roam the WWW at 15 quid per GB but it only costs 39.99 to buy and you only pay for what you use unlike the pay montly alternatives. Perfect for me as I will only use it for small periods.

The Ugly:
The vodafone software that installs when you plug the device in to your Pc/Laptop is possibly one of worst programs I have had the misfortune to encounter in a long time.
If you plan to use this device whilst stationery and in a good signal area you will not have any problems. If you use it on a train / in a car then expect constant pop-ups that cannot be minimized.

The unecessary:
Adult Content Blocking is on by default, included is Skype.com ???
WTF Vodafone since when do Skype serve adult content.... Hmm they do however offer internet telephony, I wonder if that could be the real reason.
Which ever knob jockey at vodafone thought up this trick should be shot. It just annoys paying customers who can download skype the moment they are connected via WiFi, seriously misjudged move by Vodafone.
Sunday, February 08, 2009 10:37:21 AM (GMT Standard Time, UTC+00:00)  #    Comments [2] -

 Thursday, December 18, 2008

If you are using Sql Server 2005 straight out of the box on 32bit Windows 2003 / 2000 and you would like Sql Server to be able to address more than 2Gb of RAM you have to enable AWE.


http://msdn.microsoft.com/en-us/library/ms190731(SQL.90).aspx

Thursday, December 18, 2008 1:55:21 PM (GMT Standard Time, UTC+00:00)  #    Comments [0] -
SQL Server
 Thursday, November 13, 2008

I have decided to put a shed in the garden this is an account of what was involved and what the various bits cost.



Here she is a 5m x 5m Conrad from Factory Cabins Direct. She cost £2300 inc vat with 44m thick walls and double glazing and took about four weeks to arrive. I notice the price has just gone up to £2700. The shed arrived on the back of a truck with a Hiab crane, the driver was able to hoist the pallet off the truck an on to our drive. As you would expect the pallet was about 5m long and 1m high by 1m wide.





Leveling the site and running services to the shed

I found man with a digger who came and spent a day leveling a 5.0m x 5.0m site, he also dug a trench and laid an armoured cable and water pipe from the shed to the house, for this he charged £180. I wasn't able to be on site when he was working which was a mistake as he did not do a great job of leveling the site. I should have put up some visual markers for him to work to.

UPDATE:



The shed is up and part painted, it took about 10 man days to get to this stage.
The biggest lesson I learned was that it would have been much better to do this in the dry. A couple of times water got into the roof and floor boards causing them to expand and lift.

The total cost of the project worked out at five grand. About a thousand for the concrete base which required 10 tonnes of concrete due to the gradient. 800 for the cedar shingles. The rest went on paint, electricals fittings and fixings.
Thursday, November 13, 2008 10:34:05 AM (GMT Standard Time, UTC+00:00)  #    Comments [2] -

 Monday, October 13, 2008

I needed to automate the upload of csv files to an SFTP server for print fulfilment. It was a bit trickier than I thought it would be so I recorded what I did in case I need to do it again someday.

1)     Download and install WinSCP from here: http://winscp.net

2)     Create a folder where files will be uploaded from and a sub folder called Archive

3)     Open WinSCP go to Options Select Storage and Set Configuration Storage to INI file (WinSCP.ini), close WinSCP.

4)     Add a the PATH to the WinSCP install folder in the Environment Variables

5)     Create a file in the upload folder called SftpScript.txt

6)     Create a .cmd file and add the following command, modify the path to SftpScript.txt

      winscp.com /console /script=C:\Files\PrintFulfilment\SftpScript.txt >> SftpUpload.log

7)     Add the following code to SftpScript.txt, update the parameters highlighted in red.

 

# Automatically answer all prompts negatively not to stall the script on errors

option batch on

 

# Disable overwrite confirmations that conflict with the previous

option confirm off

 

# Connect using a password

open user:password@ftp.somewhere.com

 

# Force binary mode transfer

option transfer binary

 

# Change to home directory

cd

 

# Upload the file to current working directory

put C:\Files\PrintFulfilment\*.csv

 

# Disconnect

close

# Exit WinSCP

Exit

 

8)     To prevent the same file being uploaded next time the command runs add the following to the .cmd File, updating the file mask and archive folder path.

 

MOVE *.csv C:\Files\PrintFulfilment\Archive\

Monday, October 13, 2008 4:48:43 PM (GMT Standard Time, UTC+00:00)  #    Comments [2] -

Archive
<July 2009>
SunMonTueWedThuFriSat
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2009
Charlie Barker
Sign In
Statistics
Total Posts: 151
This Year: 6
This Month: 0
This Week: 0
Comments: 65
Themes
Pick a theme:
All Content © 2009, Charlie Barker
DasBlog theme 'Business' created by Christoph De Baene (delarou)