 Tom here from Lawrence Systems, and we're going to talk about how to tune your Unify controller for a high number of devices. If you want to learn more about me and my company, head over to LawrenceSystems.com if you'd like to hire us for a project or say hire us button right at the top. If you'd like to help the channel out in other ways, there are affiliate links down below for products and services, including one for Hostify, which I will going to bring this up first because it's all related here folks. Total number devices, this was tweeted in December of 2019, 39,868 total Unify devices, 37,469. No, this isn't on one controller, but this is in the Hostify system. And I've done plenty of videos about things like this project, installing 52 Unify access points. I'm going to be doing another video on a larger install. And this comes up all the time. How did you get it to work? Why am I getting these stun protocol errors, et cetera, et cetera, et cetera. And it's documented. It is right here. And I'm just making a video to point out the fact that Unify has documentation on this and we'll talk about it real quick. Unify how to tune a controller for a high number of Unify devices. They have an introduction, symptoms, heartbeat, misters, slow to provision, database connection tuning, conclusions and reading articles. Now, people like Riley Chase, the runner, the person who runs Hostify, they know this all too well. As you scale, there are problems with MongoDB and scalability. There are problems with the way the Java VM runs. There's ways that you need to tune a few of these things. Good news is that folks at Unify have a work instruction on it. And I've seen several people always ask me this question, where do you find this document? So I make a video to point to the document. So now I can refer to the video and the document all in one. And it's pretty simple. You go in and there's a few things you have to configure. So Unify XMS, Unify XMX and XMS. Before increasing the size, try increasing XMX and XMS options by default. Unify network controller has these set to one gig and it can be increased following entries in their system properties. There's a related article, but this is what that looks like. So this particular controller I logged into has it set to two gigs here for each of these. We've also increased the informed number of thread and the informed keep alive request up to 200. You have to scale this out with the size deployment. It's just wasting memory if you did it on a small deployment, but if you have a larger controller or if you're even doing things like we're doing, hosting several clients' controllers ourselves internally in our stack, well, you have more connections and you need to do a little bit of tuning to handle said connections. That's also one of the things about it. Make sure the virtual machine has enough memory, but it's not just about the virtual machine. You start with the virtual machine had enough memory, but then you need to adjust the settings to tell the instance running of Mongo, of Java and all the things around it that they need to use more memory. And that's the important part of this symptom heartbeat, slower misprovisioning, database connection tuning. You can dive into this, like how many connections can it have to the Mongo DB and Mongo 3D, Mongo DB thread multiplier. This results in 500 threads that can be waiting for Mongo connections. So keep in mind that the more threads mean more CPU usage because CPU has to contact switch between threads. So it's kind of a balancing act to tuning. Generally, you can just bump these up a little bit and bump them up until the problem stops. If you're using an instance of a self-hosted controller, it's a little bit of fine tuning, but not too hard to do. The other option, and this is one of the reasons I brought up Hostify in the beginning is using Hostify. They do that for you. That's all taken care of on the Hostify side. They understand the scaling on this because, well, they read this documentation too and have dove further into it exact tuning. And you get a little experience when you have almost 40,000 devices connected to your network. You learn a little bit more about how they work. And Riley has taken a lot of time to dive into this. He's active in forums, active on his own blog about what they've had to do and how they've designed their backend network to be able to facilitate and handle this. But for maybe you, the end user, and you're sitting here going, okay, I only have 10 devices. Don't worry about it. But when you're dealing with 100, 200, 300 devices at a time, you definitely want to dig into this. I'll leave links to this. Not hard to go through. It's not a forum post. It's a direct from the Unify people themselves how to set this up. It's a good discussion on it. It's something we've helped several people do. And it's not too hard. It's just located in wherever the base of your Unify install is for us being Linux. It's under Varlib Unify. Pretty simple. It's going to vary though if you decided to install some windows. But I will admit, we've had a lot more headache with anyone who installs us in Windows. It just seems to be, I don't know, less stable. I highly recommend running this on a Linux system. My preference is Debian. But yes, it does work perfectly fine as I've been told under a bunch too. So that comes down to personal preference for environment you're friend with, you're more friendly with, and things like that. So I'll leave links to this and thanks. And thank you for making it to the end of the video. If you like this video, please give it a thumbs up. If you'd like to see more content from the channel, hit the subscribe button and hit the bell icon if you'd like YouTube to notify you when new videos come out. If you'd like to hire us, head over to LawrenceSystems.com, fill out our contact page, and let us know what we can help you with and what projects you'd like us to work together on. If you want to carry on the discussion, head over to Forums.LauranceSystems.com where we can carry on the discussion about this video, other videos, or other tech topics in general, even suggestions for new videos that are accepted right there on our forums, which are free. Also, if you'd like to help the channel in other ways, head over to our affiliate page. We have a lot of great tech offers for you. And once again, thanks for watching and see you next time.