백엔드에서 소스에서 DB를 관리하는 네이티브 언어에 대해
조회수 565회
최근에 들은 이야기인데요. 예를 들어 PHP로 백엔드를 작성하다가 연동된 DB에서 데이터를 긁어오고 저장하고 수정하고 등.. 데이터를 관리하는 부분을 파이썬코드로 슥 짜서 넣는다고 하더라구요. 굳이 php나 python이 아니어도 백엔드 소스 안에 네이티브 언어를 슬쩍 끼워넣어서 작업할 수가 있는건가요? 가능한거라면 그 방식을 배워보고 싶은데 참고할만한 링크가 있나요? 더하여 예시로 참고할만한 소스가 있으면 같이 보여주시면 더 감사하겠습니다
1 답변
-
제가 질문을 잘 이해했는지 모르겠는데 "어떤 백엔드 처리 스크립트가 다른 언어로 된 다른 스크립트를 실행하는 방법"이 궁금하신 거라면 그건 시스템 커맨드로 처리할 수 있습니다.
언어를 섞어서 쓰는 건 불가능하기 때문에 각 언어가 지원하는 커맨드 실행 방법을 가지고 원하는 스크립트를 원하는 언어로 실행하는 거죠.PHP를 예로 들자면 대충 이런 식입니다. (가상의 소스임)
// 예약 성공 시 이메일 발송 데몬에 내용 전달하기 if ($reservation->save()) { // PHP는 exec() 함수로 시스템 커맨드를 날릴 수 있습니다. $error = exec('/usr/bin/python /var/pymailer/queue.py reserved '.$reservation->id); // 혹시 에러 있으면 보여주기... if (!empty($error)) return $error; }
아니면... 만약 각 언어가 서로 다른 포트를 리스닝하면서 요청을 처리하는 웹서버 형태로 작동하고 있다면 그건 그냥
HTTP POST http://localhost:해당포트/어쩌구
형식으로 요청 날려 처리할 수 있기도 합니다.
예컨대 웹소켓이 Node.js로 구현돼 있는데 이걸 django가 이용해야 할 경우AJAX
를http://localhost:3000/어쩌구
에 요청하는 방식으로 Node.js의 실행결과를 얻을 수 있겠지요.
댓글 입력