That config will give you unpredictable results. The ACE will see this as 4 separate rservers in this farm. The first request will be sent to the first server in the farm. The ACE will change the port that is specified for that 1st rserver. If the client happened to come in on the same port the connection would work, but if they come in on the other port it would be a problem. You would probably see close to 50% of your users having issues.
You will need to create two different class-maps and serverfarms to achieve what you want.
Example.
class-map match-any NEW-VIP-1023
2 match virtual-address 172.20.234.33 tcp eq 1023
class-map match-any NEW-VIP-4050
2 match virtual-address 172.20.234.33 tcp eq 4050
rserver host server1
192.168.4.3
inservice
rserver host server2
192.168.5.5
inservice
serverfarm NEW-SERVERFARM-1023
rserver server1 1023
inservice
rserver server2 1023
inservice
serverfarm NEW-SERVERFARM-4050
rserver server1 4050
inservice
rserver server2 4050
inservice
You can also create two separate probes and put one probe in each serverfarm. If rserver1 fails port 1023 only that instance of the server will be pulled out of rotation. The same server can still service up port 4050 traffic.
Let me know if this helps?
Regards