Find out how many millis or micros you have between serial reads. Take the baud (bit) rate and divide by (8 bits per char + 1 start bit + 1 stop bit). At 115200 the frequency of available chars can be 11520/sec, just under 87 micros, just under 1389 Arduino clock cycles. You can do a LOT in that many cycles.
OTOH you can buffer up whole lines of text, waste the time between chars and then get all the parse and lex done in one task and you'll still get the job done on time! But which way needs the extra big buffer?