Syniti Connect
Best Practices
Atom Location
The Atom will require network connectivity to the SQL Server instance being used for the DSP. Opening ports to allow the SQL Server instance to be accessible outside a secure domain is not recommended, for this reason, the Atom should be installed on a server in the same domain as the SQL Server instance.
As the DSP application server will have network access to the SQL Server instance, installing the Atom on the same server is the recommended location (assuming the server has enough resources to run both applications). If the Atom workload is predicted to be very high and will negatively impact the DSP performance, installing the Atom on a dedicated server is recommended.
Atom Configuration
In some circumstances the JVM memory configuration of the Atom might be too low, causing processes that require large memory allocations to fail. If this happens, increase the memory for the Atom. It is recommended to increase the memory in 512MB increments. Increasing the memory is covered in this article - http://help.boomi.com/atomsphere/GUID-9DA4BA58-0D7F-40A7-815C-965DE636B8B3.html
Process Conventions
Syniti recommends using the following process naming conventions for Processes that will be registered in the DSP:
- Processes invoked via Collect COL source object action
- Processes invoked via Integrate INT solution source object action
- Processes invoked via Page Event PAG object action
- Web Service listener processes WS object action
Where
- source - a reference to the source system
- object - the object being processed
- action - the technical operation being used
- solution - the DSP solution calling Integrate; Migrate, Conduct or Compose
For example
- COL SFDC Account Query = A Process registered in Collect that gets data from Salesforce (SFDC) for the Account object.
- INT Migrate SFDC Account Create = A Process registered in Integrate for use in a dspMigrate used to load the Salesforce Account data using a Create action
- INT Compose SFDC Contact Upsert = A Process registered in Integrate for use in a dspCompose implementation that performs an Upsert operation on the Contact object in Salesforce
- PAG Address Geocode = A Process registered as a Page Event in the DSP that calls an Address Geocoding service
- WS DSPUser Create = A web service registered to wrap the DSP process for the creation of Users in the DSP
It is recommended to place reusable components, for example the configured template and connections, into the root folder in Boomi, and place other components into a folder structure that you create to logically separate the processes you’re creating. Components can be moved between folders easily in Boomi, however, be careful when using the copy function as you can inadvertently duplicate many components.
When building Boomi processes to be invoked by the DSP, limit the logic in each Boomi process to be specific for that task and as granular as possible, for example, a Collect process should only read one target object and load one table in the sdb* or dg* database. Where possible, processing should be done in the DSP rather than Boomi.
Security
Boomi integrates with the DSP by interacting with SQL Server objects; reading and writing tables, reading views and invoking stored procedures. It is highly recommended to create specific users in SQL Server for Boomi that have permissions to access only the resources required for the integration processes being built. For example, Collect Boomi processes only require INSERT permissions on DSP tables, they do not require SELECT, UPDATE or DELETE.
In development environments the SQL Server users will require additional permissions to browse SQL Server metadata, in testing and production environments this would not be required.
When creating a DSP web service using a web service listener process, create stored procedures and/or views in SQL Server to expose a restricted API to Boomi. Within the procedures use techniques to ensure SQL injection cannot occur. Within the views, return only the limited amount of data needed by the web service. It is not recommended to expose any internal DSP stored procedures or views, a custom wrapper with adequate restrictions should be created.
Increasing Database Send Operation Throughput
If you are performing a large number of database connector send operations (INSERT, UPDATE, DELETE, or stored procedure calls) and finding that the elapsed time for the operation is too high, you can add a Flow Control shape to the process to increase parallel processing of documents. It is recommended to increase the thread count gradually so that you don’t overload your Atom or target database server.
The Flow Control shape is documented here - http://help.boomi.com/atomsphere/GUID-67E3B8F1-C336-4F80-A650-E412C3789289.html. All Syniti provisioned accounts have parallel processing enabled.