On The Geoserver Layer Page, there is the option at the bottom of the page
Reload feature type ...
Bear in mind if you change any of your existing columns, any SLD may need to be changed.
If it is just adding additional columns, should be no need to recreate the layer
EDIT:
To handle different schema's, use the PostGres Schema Search Path
SET search_path TO old_schema, new_schema, public;
Create new tables in new_schema
then just switch the search order around:
SET search_path TO new_schema, old_schema, public;
Most likely, you will need to reload the feature types in Geoserver as described above to pick up any new columns.
If you want to use schema names, then Geoserver will see schema1.mytable
and schema2.mytable
as completely different tables
The only way ArcGIS Server can dynamically access a data table is if the service is published with a data source which is registered with the ArcGIS Server cluster. If you don't have a registered data source, AGS will raise a warning in the publishing process, but will let you override that warning to make a static copy in a file geodatabase (which is copied to all nodes from which the service is published). This condition is not an error, because there are times when you really do want to not be bothered with registration (for example, when publishing based on a pre-built cache), but it is not always a desirable outcome.
Since you do want dynamic table contents, you will need to follow the procedure for registering a data source with ArcGIS Server. Since there are several ways to accomplish this, I suggest you start with the overview documentation then follow up with one of the "how to" pages appropriate to your environment.
Best Answer
Not a scalable solution. WMS is light weight, geojson at some point will become too heavy for web application (try making a geojson of say 100,000 point and load it on web using openlayer now do the same with WMS, you will see the difference).
Better solution is to foreign data wrappers postgres have extension that can add the tables directly from other databases. Then you can easily make view in postgres using foreign tables + native tables. this you don't even need to use 2 separate stores in geoserver.
So this is basically connect one database to another.
https://wiki.postgresql.org/wiki/Foreign_data_wrappers
https://www.mssqltips.com/sqlservertip/3663/sql-server-and-postgresql-foreign-data-wrapper-configuration--part-3/