How to configure multiple connection with different ports?

I am using Neo4.0 and I want to install the exactly same graph as multiple instances of neo4j on the same machine and run them at the same time. Those multiple instances can concurrently handle users' queries from client, and the hope is to maximize query performance (throughout) by making better use of a single machine's power. I saw an answer to a similar question as below:

'You could install several Neo4j instances and change their port settings in their neo4j.conf files and run them at the same time.'

But how to change port settings for the same machine? The relevant configurations are below:
You can also choose a specific network interface, and configure a non-default

# port for each connector, by setting their individual listen_address.

 # The address at which this server can be reached by its clients. This may be the server's IP address or DNS name, or
 # it may be the address of a reverse proxy which sits in front of the server. This setting may be overridden for
 # individual connectors below.
 # You can also choose a specific advertised hostname or IP address, and
 # configure an advertised port for each connector, by setting their
 # individual advertised_address.

Also, there is this one:

# Bolt connector

Which one(s) should I modify to deal with mulitple instances of neo4j? Also, when creating the driver, should I one driver for each different neo4j instance?

driver = GraphDatabase.driver(self.uri, auth=(self.username, self.password), encrypted=False)

Have you proven out that a single instance of Neo4j is not the way to go? We do not see a significant number of customers set up with multiple instances of Neo4j on the same machine. It can be done but again not something we typically see.

And yes each Neo4j instance would have its own I would expect each would have unique ports for :default ports 7474, :7473 and :7687

@dana.canzano OK. it's good to know about that. In that case, I won't try doing that, just let one machine run one instance, which will handle concurrent queries from multiple clients. I had thought one instance might not be able to make full use of a machine's power.

If I have 10 machines to host 10 neo4j instances, and I have my query API (read only, no write) deployed on 30 machines, which will direct all queries to the 10 neo4j instances evenly. To do that, in my deployment, I can let each 3-API machines point to 1 neo4j instance. Does this make sense for the Community Version without using clustering?