10 Replies Latest reply on Nov 11, 2015 3:09 PM by bigtom

    Multiple servers and speed?

    bigtom

      How does ESS and multiple FMS installs change the processing load on each server. I have not tested it yet, but is it any benefit to have certain tables and scripts running on separate servers. Will each server process its own table data or is everything passed onto the primary server to process.

       

      It seems on first look everything is done on the primary server the user is connected to.

       

      As an extreme example lets say you have a light weight dual core FMS with a few simple tables and an ESS FM database hosted on a decent 12 core FMS machine with a lot of records and calc fields and relationships. If you have a filtered and sorted portal or a find or other CPU intense task to be done with the larger file records will it be processed on the 12 core and the result returned to the dual core or will the dual core need to do all the heavy lifting?

        • 1. Re: Multiple servers and speed?
          wimdecorte

          A server can not be the client of another server.  So the idea of "passing passed onto the primary server to process" is not going to fly.

           

          A user can be the client of multiple servers at the same time though.  So if you have a server that is somewhat strapped for processing power but you have  a second server sitting around then you can remove the processing bottleneck by splitting off some files to the second server.

          Keep in mind though that it will only work if you actually host the data on the 2nd server.  If you only shell out scripts to a secondary file but the data it references is still on the 1st server then you are not doing much in ways of improving performance.

           

          In your extreme example you are mixing client-tasks and server-tasks.   If the portal filtering is done on something that only exists in the client's session (say a global field,...) then the filtering is done by the client, not the server.

          • 2. Re: Multiple servers and speed?
            bigtom

            wimdecorte I see what you are saying.

             

            So to make this viable I need two files open with separate server connections and data in both files. I cannot have one connection and and ESS data source? From what I can see PSOS can use a script in and ESS file but it runs on the primary server, not the server the script came from. Can you confirm this is actually what is going on? What exactly does the ESS server do that would help the situation?

            • 3. Re: Multiple servers and speed?
              wimdecorte

              bigtom wrote:

              From what I can see PSOS can use a script in and ESS file but it runs on the primary server, not the server the script came from.

               

              I don't understand what you say here?  PSoS will run on the server that hosts the file that has the script.

               

              With "ESS Server" do you mean the external MySQL / SQL Server / Oracle Server?  Then no: it is FMS that does the translation of what the FM action is into the proper SQL syntax and executes it against the ESS Data Source. That ESS "server" of course processes and executes the query and passes the result back to FMS who then does another translation of that into the proper FM speak / action.

              • 4. Re: Multiple servers and speed?
                bigtom

                I am referring to a FM file.

                 

                If I am logged into Server A hosting File 1 and has an ESS data source for a FM File2 on Server B, this is the situation.

                 

                So If I run PSOS through the connection to Server A and the script is in File 2, Server B is the one doing the work? It seemed that Server A was doing the work using Server B's file. I guess I was wrong about that.

                 

                I am looking for how an additional server can be of benefit in the case that there are external data files used on separate servers. Maybe it is not much use, but it seems there could be some advantages.

                • 5. Re: Multiple servers and speed?
                  delfs

                  Seems to me based on the original question that perhaps if you have slow performance issues, you should look at best practices to improve optimization vs. farming out the heavy lifting.

                  • 6. Re: Multiple servers and speed?
                    bigtom

                    Everything is super fast actually. I am just looking at different ways to continue increasing speed effectively. I do not think there is any harm in exploring multiple servers as an option.

                     

                    In this case backups would be faster because each file would have a smaller set of data to backup.

                    • 7. Re: Multiple servers and speed?
                      restored18

                      I think Wim is getting confused because ESS typically refers to External SQL Sources in the FileMaker world. If you are just connecting to FileMaker files, you are adding a file as an External Data Source in another file.

                       

                      If you want to do server load sharing, you could look into a service like SyncDek. It will maintain identical copies of a database on multiple servers so you can connect some users to one server and some users to others and they all see the same data.

                       

                      Another alternative is along the lines of what delfs said. The best optimization you can make is in the database design itself. Reducing the size of your data sets and optimizing layout themes can do a lot for performance.

                      • 8. Re: Multiple servers and speed?
                        wimdecorte

                        bigtom wrote:

                         

                        I am referring to a FM file.

                         

                         

                        Got it.  You don't mean ESS (= External SQL Source), you mean just another referenced FM file

                         

                        bigtom wrote:

                         

                         

                        So If I run PSOS through the connection to Server A and the script is in File 2, Server B

                         

                        That can never happen.  Your PSoS targets the script (and thus the file) directly.

                        Remember: Server A can never be the client of Server B, it is the client - not the server - that directs traffic to either server A or server B.

                         

                        If your PSoS runs a script in File1 on Server A and that one has a subscript that lives in File2 on Server B, then I'm pretty sure your script in File1 will thrown an error.

                         

                        bigtom wrote:

                         

                        I am looking for how an additional server can be of benefit in the case that there are external data files used on separate servers. Maybe it is not much use, but it seems there could be some advantages.

                         

                        There are advantages in that you can use the processing power of the 2nd server.  But if your first server is not constrained on processing power then you're just adding overhead.

                        • 9. Re: Multiple servers and speed?
                          bigtom

                          I realize the confusion in the names. I think it is clear now that I mean an external FM data source.

                           

                          I have something that works having the same data in multiple locations on local servers. Not that tough except for the record locking system. The server needs to be on site for good speed, not in the cloud.