Kirzilla
Kirzilla

Reputation: 16606

Best way to send "messages" from PHP to Java on the same workstation

What is the best way to send "messages" from PHP script to Java program in real time. PHP script and Java programs are both working at the same work station with OS Windows. Maybe some kind of client/server? The main feature is real time; that's why I don't want to use files.

PS: I'm going to send logger messages (php) and display (java) them at OS system tray tooltip. PPS: I'm real noob in Java; it will be my first Java program. :)

Thank you.

Upvotes: 4

Views: 182

Answers (4)

Joop Eggen
Joop Eggen

Reputation: 109613

For simplicity use a database table as exchange medium. It is also easier to debug.

(It is asynchrone, one side, PHP or Java, may be down. Performance is fast, as DB-Server will keep as much in memory.)

Upvotes: 0

Ravi Bhatt
Ravi Bhatt

Reputation: 3163

Possibilities are:

  • Send your data as a POST to jsp page.
  • Make your java code read your php logs.
  • use queuing systems like RabbitMQ, AciveMQ, Redis etc.

Upvotes: 0

Desmond Zhou
Desmond Zhou

Reputation: 1409

This depend on how heavy weight your application is.

If it is your first program and it is just a little project, a possibility is to open a socket on the server, connect to it with a client and send the data as a string, make your php program the client and java program the server.

Their are things that you can borrow to avoid doing everything on the low level. But they will add weight to your program, for example using a JSON/XML parser to serialize(make the messages into bytes readable on both side) the message instead of using your own format.

Or, use a framework like JAX-RS to quickly and easily (for people familar with it, you may need some time to understand it because it is quite different from writing plain java program) to build a little web service like professionals would do.

Upvotes: 0

Heisenbug
Heisenbug

Reputation: 39204

You could use sockets (probably UDP, but depends on your needs). This way, if in the future you will need to put scripts and Java programs on different machines, you'll be able to do that without modifing the code.

In addition, once you established a communication protocol between client and server, this solution is language independent. So it's easy switch from PHP to another scripting language (the same for Java).

Upvotes: 2

Related Questions