I was able to register whenever. Once you pay the testing fee and receive your eligibility ID, you have six months to take the test, otherwise you forfeit the ~$450. If there are open seats at your preferred testing location the next day, and you are ready to test at that time, you can schedule your testing appointment for the next day. However, once you schedule a testing appointment, you will be required to pay a fee of up to $100 if you ever need to change your testing appointment.
My recommendation is if you see a test date which you know for sure will work for you, and you believe you will be reasonably ready by that date (truth is you will never feel fully ready), then go for it. I would definitely recommend scheduling at least a month in advance of when you intend to take the test if you want a decent number of options. Depending on what works for you, having a test date set can also help give you a reason to not let yourself get behind schedule.