Also, if you make the gap limit too high, your wallet will be very slow, take a long time to sync, or might crash altogether. Don't generate thousands of addresses just for the sake of it.
The main goal is run my electrum as merchant system for users to deposit / withdraw on a website, I'm coding a win server application to do that. Do you suggest an other way to do that?