SQL broker startup

JustMe

Member
I found a spreadsheet on oehive:
with the title: "Secondary broker parameter spreadsheet"
@ http://www.oehive.org/files/DBparamsOEHIVE.xls

this tells me the only three parameters I need to start my secondary broker are:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-m3
-ServerType SQL
-Mpb 5
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

I also found a second page that gives me most of the parameters; but not a lot of explanations.

I assume this is the minimal but should I include other parameters?


as always thanks in advance ...
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
I haven't looked at the spreadsheet. Personally I try to set my sights higher than "what I need" (to make it function) to "what I want", based on available resources, environment type (prod/dev/test/uat/etc), desired performance characteristics, etc.

You need -m3 to run a broker as a secondary broker. You need -ServerType SQL to specify that this broker will only spawn SQL (_sqlsrv2) servers. The -Mpb parameter determines the maximum number of servers this broker will spawn, and together with your other -Mpb parameter(s) for your other broker(s) they will in turn determine the correct value for your -Mn parameter on your primary login broker. As per the above, I would classify this as "want" rather than "need"; not in terms of whether you specify it but rather in terms of the value you assign. Don't use 5 unless 5 is appropriate for your needs.

I also always specify -minport and -maxport with SQL brokers so I can predict which port ranges will be used by this broker's servers. This is important for troubleshooting network connectivity problems and for easing firewall configuration. I usually make the port ranges a bit bigger than I plan to use. That way if I decide to make small changes to my -Mpb and -Ma parameters, I don't need to involve the network guys to push new firewall rules.
 

JustMe

Member
Thanks Rob, just a follow up ...
Don't use 5 unless 5 is appropriate for your needs
so should I use 7?

:) There was a warning that 5 was the max if you have limited resources, the system has: 2.8 ghz CPUs, 2 gb of ram 2TB raid 6 disks, basically progress database is the only load on the system. When I plugged in the max (all users) into the spreadsheet the -Mpb 5 is what it calculated, I adjusted it for 75% (users) max load it still gave me 5. -Mn is 25, so I am assuming (yes I know what happens when I assume) that 5 is appropriate?
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
I've looked at the spreadsheet you posted a link to. Do yourself a favour: throw it away. It gives you "magical" values to use without explaining why, and whoever made it knows nothing about your system, environment, database, or application. This isn't a path that leads to knowledge or to well-configured databases.

Start with your user count. Look at how many users you are licensed for (if you care about license compliance), and based on your business needs, how many users will need to connect to your database concurrently. Within that number, how many are 4GL and how many are SQL? How many 4GL are self-service (no server required) and how many are remote (connect to a server)?

Once you know how many peak remote users you want for each server protocol, you can decide how to apportion servers and clients per server. Understand that this decision involves a trade-off between performance (many servers, few clients per server) and resource usage (more servers means more memory footprint and CPU cycles on the server). Also, don't use -Mi 2 as recommended in that spreadsheet. Leave it at the default of 1, so the broker can better round-robin between servers to distribute user load.
 

JustMe

Member
Thanks, makes sense, just reading through the switches and trying to make the pf file isn't real easy. but I can add if I need to in the future.
thanks again for the help.
 
Top