12 Replies Latest reply on Dec 13, 2016 9:24 PM by taylorsharpe

    What is the best Mac server configuration?

    tamalellama

      We are considering a server hardware upgrade and have about a $6000 budget. For a FileMaker-only server with three databases, 8GB combined size, with external container storage, serving 12 FMP clients and an average of 10 concurrent PHP sessions and on average 4 scheduled scripts running each hour with some scripts touching almost half of the records each hour.

       

      Should we bias our spending towards more RAM, more processors, two-machine deployment, or what? We are presently considering the following:

       

      (1 new) Mac Pro, 3.0GHz 8-core with 25MB L3 cache and 32GB of RAM ~$6000

      or

      (2 used) Mac Minis, 2.3GHZ 4-core with 6MB L3 cache and 16GB of RAM ~$3300

      or

      (2 new) Mac Minis, 3.0GHz 2-core with 4MB L3 cache and 16GB of RAM ~$4000

       

      What would you buy and why?

        • 1. Re: What is the best Mac server configuration?
          taylorsharpe

          It is not a straight forward answer.  For an individual process and for few connected people, then fewer cores and faster ones is better.  For many connections with lots of multi-threading, then obviously lots of cores works better.  More RAM and faster CPUs both help to a degree.  But for me, the storage speed has returned the best performance improvements.  That is why I use the Mac Pro because the PCIe flash storage is faster than anything on the Mac Mini even with SSDs.  Also, the Mac Pro is more commercial grade than the Mac Mini's (e.g., uses things like Xeon processors and can put more RAM in it).

           

          I would go with Mac Pro and single machine over 2 machine setup.  But 2 machine setup does help if you have a lot of WebDirect connections.  Do you?  FYI, the PHP connections will be even lighter weight than the FMP connections and both are much less processor intensive than WebDirect connections.

           

          You might get more bang for your buck with a souped up Windows server.  I personally prefer Macs, but don't discount the Windows Server.

           

          For that matter, have you thought about FM Cloud or some other Cloud hosted solution?  There are pros and cons to them, but something to think about before spending a lot on a server.

          2 of 2 people found this helpful
          • 2. Re: What is the best Mac server configuration?
            tamalellama

            Thanks for your thoughts. Unfortunately, our reliance upon the PHP API makes both Windows and cloud services not an option.

             

            Regarding the Mac Mini: I don't know why Apple switched from a quad-core to dual-core only with their latest offering. But they do offer a PCIe disk with a new Mini. So to modify my original specs:

             

            (1 new) Mac Pro, 3.0GHz 8-core with 25MB L3 cache and 32GB of RAM and 1TB PCIe ~$6000

            or

            (2 used) Mac Minis, 2.3GHZ 4-core with 6MB L3 cache and 16GB of RAM and 2TB SSD ~$3300

            or

            (2 new) Mac Minis, 3.0GHz 2-core with 4MB L3 cache and 16GB of RAM and 1TB PCIe ~$4000

             

            I should have stated explicitly that we do not have an Web Direct sessions.

            • 3. Re: What is the best Mac server configuration?
              PointInSpace

              Why would cloud hosting be negated by the PHP API?  FileMaker Cloud doesn't support such, but we certainly do on both our shared and dedicated hosting accounts.  Contact me privately if you want more information.

               

              - John

              • 4. Re: What is the best Mac server configuration?
                tamalellama

                In addition to FileMaker Cloud not supporting PHP, hosted solutions like pointinspace.com are not suitable for large volumes of container objects. It needs to be local.

                • 5. Re: What is the best Mac server configuration?
                  wimdecorte

                  tamalellama wrote:

                   

                   

                  Should we bias our spending towards more RAM, more processors, two-machine deployment, or what?

                   

                  Your current Usage Stats log (stats.log) should give you some clues here.  No use spending money on things that are not a bottleneck.

                   

                  Taylor already gave you some good info on how the design of the solution and the # of users can skew the decision on processing power to more cores vs. more clock-speed.

                  • 6. Re: What is the best Mac server configuration?
                    PointInSpace

                    Why do you say that?  We have lots of customers with plenty of GB of container objects.  Just be sure to store them externally or use SuperContainer.

                     

                    Of course, if the majority of your traffic is on your LAN, then I would agree a local server is going to be your best bet.

                     

                    - John

                    • 7. Re: What is the best Mac server configuration?
                      taylorsharpe

                      I think with hosted solutions, the limitation is not the volume, it is your wide area network connection speed.  Large containers would be accessible only at those speeds instead of local area network speeds.  However, I have to say that most of my cloud hosted clients rarely have speed problems with containers.  If they do, it is more about schema, relationships, sorting, portals, than it is about containers.  FileMaker does a good job of just displaying the container icon (not downloading it unless needed) or if it has a preview, it handles it like a web browser as a separate process that loads while you do other things live in FileMaker.  In other words, you don't have to wait for the container data to load before doing other things in FileMaker.  It's actually pretty slick how it works. 

                       

                      There may be other performance reasons to keep it on the network, but containers would be one of the lesser problems to overcome.  Granted a hosting company is going to charge you more to host large volumes.  Then again, it usually is nicely handled and backed up in the cloud by the hosting company keeping your solution maintenance activities minimal. 

                      • 8. Re: What is the best Mac server configuration?
                        tamalellama

                        I appreciate the thoughts about hosted solutions, but we really do need to keep it on the LAN. Those 12 FMP users are accessing large container objects regularly and may pull ten or more multi MB files open in one operation. That being said, I'll look at the logs. In the meantime, given the parameters I've mentioned thus far, what else would you need to know to recommend a particular configuration?

                        • 9. Re: What is the best Mac server configuration?
                          tamalellama

                          Okay, I'm logging now for review, but not sure what would indicate a problem from the following metrics:

                           

                          Network KB/sec In

                          Network KB/sec Out

                          Disk KB/sec Read

                          Disk KB/sec Written

                          Cache Hit %

                          Cache Unsaved %

                          Remote Calls/sec

                          Remote Calls In Progress

                          Elapsed Time/call

                          Wait Time/call

                          I/O Time/call

                           

                          i.e. Disk read/writes in excess of 3000 KB/sec you need a PCIe drive or Cache hits of X% you need more RAM, etc. Any suggestions?

                          • 10. Re: What is the best Mac server configuration?
                            wimdecorte

                            Network and Disk are pretty self explanatory since they indicate sheer volume.

                             

                            For disk i/o you have the extra metric of 'i/o time per call', obviously that one should be low.  If it is not then you need to get faster disks.

                             

                            Memory is seldom an issue these days but obviously you need to assign enough RAM so that the cache hit % is 100% consistently.  but don't go overboard on the cache setting either, it's been known to introduce instability if you go too high.

                             

                            Remote calls /sec and remote calls in progress give you an indication of the intensity of the user's interactions, how hard it makes FMS work.

                             

                            That leaves 'elapsed time per call' and 'wait time per call'.  Those have to do with processing power and processor availability.  In my experience this is the area where the most suffering is.

                            Look for high numbers there, if you have them then your deployment is starved for processing power.  But that can be either wanting more cores or faster cpus.  The logs won't tell you that.  The logs together with a good insight into the design will help there.

                            2 of 2 people found this helpful
                            • 11. Re: What is the best Mac server configuration?
                              tamalellama

                              We went with the Mac Pro. Our experience has been remarkable. Scheduled server scripts have especially benefited and are running in 1/4 - 1/2 the time previously. Backups are also much faster as noted regarding the PCIe flash storage.

                              • 12. Re: What is the best Mac server configuration?
                                taylorsharpe

                                tamalellama wrote:

                                 

                                We went with the Mac Pro. Our experience has been remarkable. Scheduled server scripts have especially benefited and are running in 1/4 - 1/2 the time previously. Backups are also much faster as noted regarding the PCIe flash storage.

                                I concur on the Mac Pro performance.  I keep having enterprise level IT guys come in and replace in-house (on LAN) Mac Pros with their high end Windows server and so far, none of them have performed better than the Mac Pro and most cost a lot more and are noticeably slower.  I can't fully explain it, I just know the end user experience. 

                                 

                                Suggestion:  Backups are better done to another drive for efficiency and performance.  You can get a good Thunderbolt or USB-3 RAID that would handle backups well.   You want local backups to be on a separate drive than the live data in case the live data drive goes, it doesn't kill your backups too leaving you nothing.  And of course you should be planning for an offsite backup every so often too.