Additional: Ready for Clustering: Settings for Uploading and Registering Attached Files
## Prerequisites
The "cluster" on this page refers to an AP server cluster, not a DB server cluster.
## Overview
By changing the default settings, configure Pleasanter to enable proper uploading and registration of attached files.
## Procedure
As shown in the diagram below, it is assumed that there are two servers (WEB#1, WEB#2) on which Pleasanter will be deployed.
1. Log in to WEB#1.
2. Open App_Data/Parameters/BinaryStorage.json.
3. Set each parameter in the file as follows and save it. For details on the parameters, please refer to [Parameter Settings: BinaryStorage.json](/manual/binary-storage-json).
|Parameter|Value|
|:--|:--|
| Provider|"Rds"|
|UseStorageSelect|false|
|TemporaryBinaryStorageProvider|"Rds"|
4. Restart Pleasanter.
5. Repeat steps 1 to 4 for WEB#2.
For more details on the background of why this procedure is necessary, please refer to the following.
## Background Infomation
When configuring Pleasanter in a multi-node cluster, if the load balancer (LB) uses a method such as round-robin without session persistence (session affinity), issues may occur with login authentication and some session management operations.
<span style="color:red">To ensure stable operation, a configuration with session persistence enabled (session affinity / sticky sessions) is recommended.</span>
Additionally, cases have been confirmed where file registration does not complete properly during attached file upload processing due to session switching midway through the process.
### If The Default Value (null) is Specified for TemporaryBinaryStorageProvider in BinaryStorage.json
As shown below, in an environment where there are multiple servers (WEB#1, WEB#2) with Pleasanter installed on the backend of the load balancer (LB), if you try to upload a file to the "[Attachment item](/manual/table-management-attachments)", the request will be distributed by the load balancer, so in some cases the upload or registration will not be successful.

If TemporaryBinaryStorageProvider is set to null, the uploaded file will be saved in the temporary folder (App_Data/Temp) of the web server, and when subsequent processing (creation or updating) is performed, the target file in the temporary folder will be read and the binary data will be registered in the Binaries table of the database (Implem.Pleasanter).
Therefore, if the web server that receives the upload request and the web server that receives the request for subsequent processing are different due to the load balancer, or if one of the web servers cannot receive all of the data sent in parts (large files will be split), uploading and registration will not be successful.
### When "Rds" is Specified for TemporaryBinaryStorageProvider in BinaryStorage.json
As stated in the answer above, by specifying "Rds" for emporaryBinaryStorageProvider, you can directly register data to the database (Implem.Pleasanter) as shown in the red line in the figure below.

The BinaryType column of the record to be registered in the Binaries table is "Temporary" at the time of uploading, and becomes "Attachments" when subsequent processing is performed.
## Related Information
[Manage Table: Items: Attachments](/manual/table-management-attachments)
[Set Parameter: BinaryStorage.json](/manual/binary-storage-json)