Bouncy Melons 0.2
declarative style orm
Persistent connections

Brief

Persistent connection open once for SQL Server user, if you connect again - you continue to use same connection.

Important! it's NOT your application user, but credentials you use for connecting to database.

Benefits

  1. speed
  2. you can cache data using temporary tables

Risks

  1. If you create temporary table for one app user, another app user will be able to access it, in case they use same credentials for sql connection
  2. If you change data in main tables - you need to update temporary tables (use \bm\DataList::updateView())

Best Practices

  1. never use root for persistent connection
  2. map your app user roles to sql users (TODO example)
  3. use persistent connection for anonymous user (TODO example)