Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
Fredrik_Lautrup
Employee
Employee

This is not easy to answer, so let me walk you through the flow in QlikView and talk about the life of the different sessions in QlikView.

Let’s start at the browser. The most common way of maintaining a session in the web layer is session cookies. Session cookies is a small set of information that the browser will send with every request in a session. Session cookies is also what QlikView uses to maintain the web layer sessions. So once authenticated, QlikView knows who you are and will assign a random set of characters, stored in a session cookie in the browser, to identify your future requests to QlikView.

The session cookie will identify your requests until you either log out or your session times out from inactivity.

The web session is the first session you will encounter using QlikView. The second session is the QlikView server session.

Session.png

So what is a QlikView server session? Think of the QlikView server session as the place where QlikView keeps track of what you are doing in a document. The session is identified by a user’s access to one document. As you click in the document, your state will be recorded in the session. Your session is maintained in memory while you are active in the document and a bit longer. When a QlikView server session times out, the state is written to disc. If you come back to the same document later you can continue exploring at the same place you left off.

So when are the different sessions used?

If you use the AJAX client, both sessions are used. If you lose your web session you will have to re-authenticate to get a new session and if the QlikView server session times out you will have to reconnect.

Reconnect4.png

If you use the thick client or the plugin, these talk directly to the QlikView server and therefore only use QlikView Server sessions.

The timeouts can be configured: the timeout configuration you do in the QMC is related to the QlikView Session; whereas the timeout values for the web session only are configurable in the local configuration file for the web server.

So now you know how sessions are used in QlikView. Even though this is not directly related to security, it will help you understand concepts like load balancing, web tickets and authentication in QlikView.

I hope you found this information useful, if you have any other subjects related to security that you like me to write about please leave a comment.

Tags (1)
19 Comments
Fredrik_Lautrup
Employee
Employee

Thanks,

feedback like this is always welcome as we want to make these blog posts as good as possible.

Regards

Fredrik

0 Likes
1,624 Views
Anonymous
Not applicable

Hello Fredrik,

You mentioned about document timeout. Can you give more info about that?

Honestly I never saw that working. Even if you leave for weekend you can still observe the same memory usage on Monday. Thus, in order to dump the memory we usually recommend our clients to use a batch job.

What are the factors related to document timeout? Can schedules be a factor also?

BR

Serhan

0 Likes
1,624 Views
Fredrik_Lautrup
Employee
Employee

So because a session for a user timeout does not mean that the document is unloaded from memory.

I think there is another setting for the engine around when a document is unloaded from server memory, is there anyone that knows the details of these settings?

0 Likes
1,634 Views
Anonymous
Not applicable

In Qlikview 11:

     System, Setup, select the QVS, Documents

or Documents, User Documents, Select the document, Performance

Document Timeout

Open documents take up valuable system resources (that is, memory space, RAM, is allocated) and should not be allowed to remain open when not in use. However, if a document is closed too quickly, the users may get longer delay times when accessing the document, because the server has to reopen it. This value controls for how long a document will be allowed to be unused before the QlikView Server (QVS) closes the document and reclaims the resources.

Default value: 480 minutes.

0 Likes
1,634 Views
Anonymous
Not applicable

Hello Luc,

Yes, I'm aware of that option.

Theoretically you are right; but practically it does not work as you mention. As far I and many of our consultants, here observed. And this is the way it is ever since v10 or maybe even more. Honestly, I never saw that working.

Serhan

0 Likes
1,634 Views
dde
Employee
Employee

The Document Timeout will only apply once *every* Session is terminated against that document.  So if your Session Timeout is 30 min and your Document Timeout is 8 hrs then the document will not leave RAM until 8.5hrs after the last user's Session is removed from that document.

Note that use of Preload will change this behaviour. 

When the Document Timeout is invoked it will only drop the base QVW RAM, it will not purge related cache.

0 Likes
1,634 Views
Anonymous
Not applicable

Hello,

So in that case cache is never purged? Or not purged just when Preload is applied? 

Did you guys test it or you are informing just what should happen? If you tested it and saw that, I will try testing on my side again.

Because we left the document open for the weekend in server (noone uses it for a whole weekend) and expect the RAM to be minimal when we come back on Monday; but it was not the case.

BR

Serhan

1,634 Views
qvraj123
Contributor
Contributor

our security department gone through our existing applications and has some findings. I am not an admin but was assigned to do some research on the following.

ISSUE is

from the browser when a single user using his AD credentials can login into two different computers

and access the report - two different sessions on two different systems (lets say a laptop, and a desktop)

When this happens - are we not supposed to see any message like session already active, some kind of message so that the user has only one session active; may be restrict the user to only 1 session which is active

>> we are QV version 11 with 64BIT

Could anyone please point me in the right direction as to what could be settings if any

thanks a lot for your time

rj

0 Likes
1,634 Views
mr_barriesmith
Partner - Creator
Partner - Creator

Did you try clicking/making selections?  I am fairly certain that because Qlik is client-server, the browser will show the sheet and only try change the display on some user action.  The second machine will activate a session and terminate the original on the server-side.  So if you try clicking on session 1 after activating session 2 you will usually get an attempting to reconnect message.

I don't think you should expect a message and you will only end up with one connection per App at any point in time.  Remember, I can open two Apps in different tabs on the browser at one time - giving two sessions.

0 Likes
1,539 Views