BBComm Authentication Mechanism - bloomberg

I have a .NET process that collects a bunch of rates each morning before I get in -- this does a few things:
Checks if bbcomm.exe is running
Starts bbcomm.exe if it's not running
Creates a Session on localhost:8194 then connects to the //blp/refdata service
Pull some historical and reference data points
Works great, except when it doesn't.
Sometimes the connection to Bloomberg persists after I logoff Bloomberg Desktop, even after a reboot, for several days.
Sometimes it doesn't and it won't collect rates until I logon to Bloomberg which starts the connections up right away.
Does BBComm cache my credentials? I see in bbcomm.log it initiates the connection with an SSL certificate -- is this specific to my PC? Is it generated when I logon to Bloomberg, and expires at some interval?
How does it work aside from magic?

Related

VPN connection disables automatic schedules on my tasks

I have created a task using automation anywhere to run automatically at specified times and the schedule kicks off well until i logon to the machine remotely using vpn access, when i start loging on to the machine using the vpn my automatic schedules stops working after that, what could be the cause of this issue and how do i resolve it? the machine currently runs windows 7 enterpise.
Kind Regards,
Reuben Kekana
Given your information, the first thing that comes to mind:
When you log into the environment hosting the bot, you essentially 'steal' the connection from the AA control room. When you then disconnect from the environment, neither you nor the control room have an active session to this environment. This in effect means the environment 'logs off' and thus no longer runs any scheduled tasks.
You would need to go to the control room and re-establish this connection.

How does dropbox server keep connection alive with all its client app?

Dropbox has more than 300M user.Dropbox desktop application need to keep connection alive with dropbox server for every updates.
But how does dropbox server keep connection alive with all its desktop user?
The dropbox client keeps a TCP connection constantly open to listen for server-side notifications. When it receives a notification, the client initiates an HTTPS conversation to see what changed and download it. When something changes on the client side, it also initiates an HTTPS conversation to update the files on the server.
Source: http://www-net.cs.umass.edu/imc2012/papers/p481.pdf
The Dropbox client keeps continuously opened a TCP
connection to a notification server (notifyX.dropbox.com),
used for receiving information about changes performed else-
where. In contrast to other traffic, notification connections
are not encrypted. Delayed HTTP responses are used to implement a push mechanism: a notification request is sent by the local client asking for eventual changes; the server response is received periodically about 60 seconds later in case of no change; after receiving it, the client immediately
sends a new request. Changes on the central storage are instead advertised as soon as they are performed.
While the decrypted headers give no indication of what servers Dropbox uses to keep so many open TCP connections, people report being able to keep over 600k (https://stackoverflow.com/a/9676852/15472) or even over 1M (http://blog.whatsapp.com/196/1-million-is-so-2011). With enough load-balancing, 300M users, of which only a fraction of which are connected simultaneously and actively share data within each other, certainly seems within reach.
I doubt that all 300M users are connected at the same time... And by the amount of storage they provide, they will have enough servers to handle the needed amount of connections, maybe 1% of their user count at a time.
If you like to investigate yourself, you could use tools like TCPView (part of Sysinternals Suite) to check which connections are opened by the application, or Wireshark to check the transferred data.
I assume that you mean 'update' of storage content; that could also happen on fixed intervals by opening a connection, getting the files list and closing the connection afterwards. In this case the connection would be used for a few seconds in an interval of e.g. 5 minutes. This would again reduce the number of needed simultaneous connections by factor ~100.

Continue processing/execution while HTTP connection is lost (Web Server/GlassFish)

I got this question regarding web server (such as nginx, Cherokee or Oracle iPlanet) and Java containers (such as GlassFish): Can we control what happens to the connection if the user drops an unfinished connection?
When a browser opens an HTTP/HTTPS connection to a server, it hits the web server (nginx, Cherokee or Oracle iPlanet) and then reverse proxies to the Java container (GlassFish). The Java application then executes and does quite a lot of things such as calculation and finally needs to write to, say, 3 different databases. If it has finished writing to the 1st database - but not yet to the 2nd and 3rd database - and the user closes the connection (by closing the browser window, or looses a network connection, etc.) what will happen to the process?
Specifically, I would like the process to CONTINUE until it finishes executing all the code. I know of one way is to spin off the process on a new thread, but then this will incur computation costs. So, are there any settings/config I can do to make sure it will continue to execute even though the user has broken the connection?
With nginx, you can set proxy_ignore_client_abort on; and it will not close the connection to the backend if the client closes its connection.

The identity check failed for the outgoing message

We have a WCF Service that runs on a Domain Server. We have a couple a website (WCF Client) not on the domain and we use Username and password to authenticate. And everything workes fine.
Some days when the Service app-pool recycles the website fails to connect and starts throwing lots of identity check failed error messages. (The expected identity is 'identity(http://schemas.xmlsoap.org/ws/2005/05/identity/right/possessproperty: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/thumbprint)' for the 'http://xxx.com:8004/sts.svc/username' target endpoint.) But most days it works fine.
What could be wrong and how to resolve this.
** The clocks on the server and client are in sync.
thanks
Ravi
Check the clocks on the servers and clients. WS-Security fails if the clock skew between the client and server is greater than a threshold, 5 minutes by default.
The automatic clock sync on Windows Server doesn't always do its job. Clients may not sync at all. If everyone syncs to a reputable time source (NIST, for example), your problems may go away entirely.

Create multiple connections in a single browser window with wcf in silverlight

I have develop a silverlight 3 chat application in which one user chat with multiple users on a same time.
In my application a chat window is a
silverlight control and a user can
open more than 10 chat windows on same
time in a single browse window.means
every chat window make connection with
wcf.
I have allready increase connection limits of wcf using throttlingservice behavior. It works for multile clinets means multiple browses open on same time on different machines and its more than 10. its ok. but if when one user chat with more than 10 users on same time then on 11th connection its break.
please help me and provide me solution for this problem.
Thanks
I think there is something wrong with your client implementation. Do your clients keep the connection to your server open for too long? Ideally you should only have very compact and short request/reply messages between the client and server such that each connection is only short-lived.
A user cannot send messages from each client simultaneously, I suspect. So you should hardly ever have to open more than one connection between client and server simultaneously.
Do you get the exception if all the other channels are closed? There may be a limit to the number of active connections. You may have to dole out connections between windows when there are more than ten open windows to ensure that you don't attempt to open that 11th connection.