JAVA基础笔试准备

填空题

  1. Java 提供两种不同的类型:引用类型和原始类型
  2. Error表示恢复不是不可能但是很困难的情况下的一种严重问题
  3. 静态内部类是被声明为静态的内部类,它可以不依赖与外部类实例被实例化
  4. Oracle不包含的后台进程有  SASS进程  包含 SMON、PMON、DBWR

实操题

Java的内存如何分类?分别起到的作用是什么?

运行时数据区即是java内存

java内存通常被划分为5个区域:程序计数器(Program Count Register)、本地方法栈(Native Stack)、方法区(Methon Area)、栈(Stack)、堆(Heap)

 程序计数器(Program Count Register):又叫程序寄存器。JVM支持多个线程同时运行,当每一个新线程被创建时,它都将得到它自己的PC寄存器(程序计数器)。

 栈(Stack):又叫堆栈。JVM为每个新创建的线程都分配一个栈。栈(Stack)是操作系统在建立某个进程时或者线程(在支持多线程的操作系统中是线程)为这个线程建立的存储区域,该区域具有先进后出的特性。

   本地方法栈(Native Stack):存储本地方方法的调用状态。

   方法区(Method Area):当虚拟机装载一个class文件时,它会从这个class文件包含的二进制数据中解析类型信息,然后把这些类型信息(包括类信息、常量、静态变量等)放到方法区中,该内存区域被所有线程共享。本地方法区存在一块特殊的内存区域,叫常量池(Constant Pool),这块内存将与String类型的分析密切相关。

    堆(Heap):Java堆(Java Heap)是Java虚拟机所管理的内存中最大的一块。Java堆是被所有线程共享的一块内存区域。在此区域的唯一目的就是存放对象实例,几乎所有的对象实例都是在这里分配内存,但是这个对象的引用却是在栈(Stack)中分配。

 

如果我们有一台8G内存的服务器,我们该如何分配TOMCAT使用内存?

 tomcat内存参数

  1. -server:一定要作为第一个参数,在多个CPU时性能佳
  2. -Xms:java Heap初始大小。 默认是物理内存的1/64。
  3. -Xmx:java heap最大值。建议均设为物理内存的一半。不可超过物理内存。
  4. -XX:PermSize:设定内存的永久保存区初始大小。缺省值为64M。
  5. -XX:MaxPermSize:设定内存的永久保存区最大 大小。缺省值为64M。
  6. -Xmn:young generation(年轻代)的heap大小。一般设置为Xmx的3、4分之一
     

当碰到CPU超过100%,服务器无响应的时候,我们有什么办法可以检测到问题?

首先检查哪个进程占用资源过多,找到对应的进程,关注进程的日志输出,查看日志,分析问题。

 

数据库的读取慢的时候,我们该如何处理?

增加缓存机制,建立索引,把缓存,线程池都用上,优化数据库结构,优化索引

 

DB数据库和JAVA APP服务器一台在香港,一台在日本,查找4000条数据需要五分钟的时间,有什么办法缩短查找时间呢?

不知

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值