I tried to receive a file from Linux to USS of z/OS (running in a Linux emulator which is called ZD&T), and compared the performance between using GoLang and Java.
When running the built code written in GoLang and this sftp package, it took 42 minutes and 30 seconds to receive a 940M file.
But when running a Java program (using Jsch to do sftp) using JVM, it took only 8 minutes 14 seconds to receive the same 940M file.
(More test showed that the performance of GoLang is much (5~10 times) slower than Java when running in z/OS, or send files to z/OS;
But Go is similar or has better performance than Java if running in Linux and send/receive files to/from Linux, or receive files from z/OS)
How come a compiled code is even slower than a interpreting code? And so slow? What could be the reason of the performance issue?